Prévia do material em texto
ENDEREÇOS IP ANTARTIDA.C Antartida é um programa que recebe um IP e o aloca em um endereço de memória que será o endereço retornado por esse programa. Temos como exemplo o IP 65.21.52.178 que foi inserido no array /bs/ usando a ordem little-endian e retorna o seguinte endereço web http://1091908786 que pertence a página https://antartida.xyz. Abaixo é possível ver o programa com comentários explicativos: #include <stdio.h> int main() { unsigned char bs[] = {178, 52, 21, 65}; //Recebe um IP no modo little-endian unsigned int *p; p = (unsigned int *) bs; //converte bs em um ponteiro para unsigned int, em seguida, cancela a referência a ele para atribuir seu valor à variável p. printf("antartida.xyz has address http://%u\n", *p); //Printa a mensagem e o ponteiro p. Esse ponteiro armazena um endereço de memória e faz referência a esse endereço guardado (Nesse caso, seria o IP armazenado em bs) SIZES.EXE No meu computador, o programa sizes.exe retornou informando que o tamanho de um /long/ e um /int/ é, respectivamente, 8 e 4. Alterando o tipo do ponteiro p de /unsigned int */ para /unsigned long */, é possível perceber a mudança no endereço web que antes era http://1091908786 e passa a ser http://18446687123535115442. http://65.21.52.178/ https://antartida.xyz/ http://65.21.52.178/ http://18446687123535115442/