TarcisioSilva
(usa Ubuntu)
Enviado em 30/05/2017 - 17:54h
tenho que pegar um ip e uma mascara de rede fazer um AND com os octetos binarios para resultar num endereço ip.
logicamente sei como proceder nao estou sabendo utilizar a linguagem
entao dividi a captura em partes do ip, transformei em binario com o itoa agora precisaria transformar em int para efetuar a soma e assim gerar o binario da rede
segue o condigo que fiz ate agora, P.S. sou bem fraco em linguagem C
// bloco IP
int ip1, ip2,ip3,ip4;
char primeiraParte[10], segundaParte[10], terceiraParte[10], quartaParte[10];
// bloco mascara
int masc1, masc2,masc3,masc4;
char primeiraMasc[10], segundaMasc[10], terceiraMasc[10], quartaMasc[10];
printf("Escreva a primeira parte!\n");
scanf("%i",&ip1);
itoa(ip1,primeiraParte,2);
printf("Escreva a segunda parte!\n");
scanf("%i",&ip2);
itoa(ip2,segundaParte,2);
printf("Escreva a terceira parte!\n");
scanf("%i",&ip3);
itoa(ip3,terceiraParte,2);
printf("Escreva a quarta parte!\n");
scanf("%i",&ip4);
itoa(ip4,quartaParte,2);
// bloco mascara
printf("Escreva a primeira parte!\n");
scanf("%i",&masc1);
itoa(masc1,primeiraMasc,2);
printf("Escreva a segunda parte!\n");
scanf("%i",&masc2);
itoa(masc2,segundaMasc,2);
printf("Escreva a terceira parte!\n");
scanf("%i",&masc3);
itoa(masc3,terceiraMasc,2);
printf("Escreva a quarta parte!\n");
scanf("%i",&masc4);
itoa(masc4,quartaMasc,2);
Essa é a parte que estou tentando fazer os calculos
x = primeiraParte;
y= primeiraMasc;
z = primeiraParte+primeiraMasc;
printf("%s e masc %s e o resultado e %s",x,y,z);
//printf("%s, %s, %s, %s \n",primeiraParte,segundaParte,terceiraParte,quartaParte);
//printf("%s, %s, %s, %s ",primeiraMasc,segundaMasc,terceiraMasc,quartaMasc);
return 0;