我正在尝试发送GET请求,当我尝试检索h_addr_list[0]
时,尝试读取位置0x0000000C时出现访问冲突错误。
hostent* FAR hostname = gethostbyname(sDetails.host);
serveraddr.sin_addr.s_addr = *(LPDWORD)hostname->h_addr_list[0];
sDetails.host
设置为http://www.google.ca进行测试。
答案 0 :(得分:2)
来自Winsock gethostbyname documentation:
如果没有错误发生, gethostbyname 会返回指向上述 hostent 结构的指针。否则,它会返回 null 指针,并且可以通过调用 WSAGetLastError 来检索特定的错误编号。
文档继续描述预期的错误代码,其中包含调用gethostbyname
后跟WSAGetLastError
的示例代码。