C/C++|linux下gethostbyname通过域名获取IP的例子

#include
#include
#include
#include
#include
#include
#include


int main(int argc, char *argv[])
{
int i;
struct hostent *he;
struct in_addr **addr_list;


if (argc != 2) {
fprintf(stderr,"usage: ghbn hostname\n");
return 1;
}


if ((he = gethostbyname(argv[1])) == NULL) {// get the host info
herror("gethostbyname");
return 2;
}


// print information about this host:
printf("Official name is: %s\n", he->h_name);
printf("IP addresses: ");
addr_list = (struct in_addr **)he->h_addr_list;
for(i = 0; addr_list[i] != NULL; i++) {
printf("%s ", inet_ntoa(*addr_list[i]));
}
printf("\n");


return 0;
}

    推荐阅读