linux环境下gethostbyname函数问题
写了个测试程序如下
struct hostent *hp;
char AlarmDevIP[20];
int x2;
hp = gethostbyname("www.google.com");
if (hp)
{
for(x2=0;hp->h_addr_list[x2];++x2)
{
strcpy(AlarmDevIP,inet_ntoa(*(struct in_addr*)hp->h_addr_list[x2]));
}
printf("%s", AlarmDevIP);
}
else
{
printf("get host by name error\n");
}
发现得到的结果总是 error,请问这个函数对程序所在的环境有要求,我测试环境在公司内网,要通过网关才能到外网的,另外呢知道这个函数的实现是怎么个过程吗?谢谢!