|
#include <netdb.h>
#include <stdio.h>
#include <sys/types.h>
#include <stdlib.h>
#include <sys/socket.h>
#include <arpa/inet.h>
#include <netinet/in.h>
int main(int argc, char * argv[])
{
if(argc != 2)
{
printf("Usage: %s <Ip>\n", argv[0]);
exit(0);
}
struct hostent * hostent = gethostbyname(argv[1]);
printf("%s\n", hostent->h_name);
in_addr_t adr = inet_addr(hostent->h_name);
int i = 0;
for(i = 0; i < 4; i++)
{
printf("%x ", *(((char*)&adr) + i));
}
printf("\n");
printf("0x%x\n", adr);
struct in_addr adrr;
inet_aton(hostent->h_name, &adrr);
printf("0x%x\n", adrr.s_addr);
char * str = inet_ntoa(adrr);
printf("str:%s\n", str);
return 0;
}
#include <stdio.h>
#include <arpa/inet.h>
int main()
{
struct in_addr addr;
if(inet_pton(AF_INET, "192.168.159.128", &addr))
{
printf("0x%x\n", addr.s_addr);
}
char strIp[100];
if(inet_ntop(AF_INET, &addr,strIp, sizeof(strIp)))
{
printf("%s\n", strIp);
}
return 0;
}
|
|
|