首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 操作系统 > UNIXLINUX >

程序中使用gethostbyname出现段异常

2012-03-12 
程序中使用gethostbyname出现段错误我在程序中用到gethostbyname,出现段错误,请大家帮忙看看。我的代码:cha

程序中使用gethostbyname出现段错误
我在程序中用到gethostbyname,出现段错误,请大家帮忙看看。
我的代码:
char   *hostname2ip(const   char   *host)
{
      struct   hostent   *hp;  
      hp   =   gethostbyname(host);
      if(hp)  
      return   (   inet_ntoa(   *(struct   in_addr   *)hp-> h_addr_list[0]));
      else
      return   NULL;
}

外部调用时,传入的参数host为“http://www.afrsmartinvestor.com.au”.

调试信息如下:
gethostbyname()   from   /lib/tls/libc.so.6
nss   hostname   digits   dots()   from   /lib/tls/libc.so.6
__res_ninit()   from   /lib/tls/libc.so.6
__res_vinit()   from   /lib/tls/libc.so.6
fopen@@GLIBC_2.1()   from   /lib/tls/libc.so.6
__fopen_internal()   from   /lib/tls/libc.so.6
malloc()   from   /lib/tls/libc.so.6
_int_malloc()   from   /lib/tls/libc.so.6

[解决办法]
不要输入 "http:// " 试试,另外,你代码不完整,不知道怎么分析,gdb的信息并不是说 gethostbyname 有问题,你最好打断点跟一下看看

热点排行