gethostbyname出错,hostent总是为空

来源:互联网 发布:台湾国民党解放军知乎 编辑:程序博客网 时间:2024/05/08 03:37
gethostbyname总是出现10093的错误,是因为在Windows平台下没有调用WSAStartup来初始化WinSock,所以会出错,解决错误的方法是首先调用WSAStartup来初始化WinSock,为了程序更安全点,在写WSAStartup的时候,就记得要写WSAClearup。

要查看gethostbyname返回什么错误,请使用WSAGetLastError。

在Unix下的Socket编程不同于Windows,在Unix下是不需要调用类似WSAStartup的函数来进行初始化的,直接用gethostbyname就可以了,我正是因为把Unix下的小程序向Windows移植时忽略了初始化WinSock才会出错的!


原创粉丝点击