Linux下C实现通过域名得到IP
收藏
一直想学Linux网络编程
并且固执的要用c来写 认为这样才是最纯正牛x的
结果c写网络太难了.....
我想实现一个http的简单的get操作
居然没有找到一个例子
气死我了
Linux下的学习资料太少 那 我就来补充吧
gethostbyname()
真是相当简单 我终于可以自己写一个网络程序了
/***************************************************************************
* Copyright (C) 2008 by root *
域名 转 IP地址
***************************************************************************/
#include <stdio.h>
#include <stdlib.h>
#include <errno.h>
#include <netdb.h>
#include <sys/types.h>
#include <netinet/in.h>
int main(int argc, char *argv[])
{
struct hostent *h;
char hostname[40];
printf("请输入域名\n");
scanf("%s",hostname);
getchar();
if((h=gethostbyname(hostname))==NULL)
{
fprintf(stderr,"不能得到IP\n");
exit(1);
}
printf("HostName :%s\n",h->h_name);
printf("IP Address :%s\n",inet_ntoa(*((struct in_addr *)h->h_addr)));
return EXIT_SUCCESS;
}