gpt4 book ai didi

c++ - getaddrinfo() 函数抛出错误 n 11003

转载 作者:搜寻专家 更新时间:2023-10-31 01:05:18 59 4
gpt4 key购买 nike

这让我抓狂

#undef UNICODE

#include "stdafx.h"
#include <WS2tcpip.h>
#include <WinSock2.h>
#include <string>
#pragma comment(lib,"Ws2_32.lib")

using namespace std;

int _tmain(int argc, char* argv[])
{

WSADATA wsa;
int error = WSAStartup(MAKEWORD(2,2),&wsa);
if (error != 0)
{
printf("An error in startup %d\n",WSAGetLastError());
system("pause");
}

addrinfo hints,
* result = NULL,
* ptr = NULL;
hints.ai_family = AF_UNSPEC;
hints.ai_protocol = IPPROTO_TCP;
hints.ai_socktype = SOCK_STREAM;

error = getaddrinfo(argv[1],NULL,&hints,&result);
if (error != 0)
{
printf("An error in getaddrinfo %d\n",WSAGetLastError());
system("pause");
}

char stringbuffer[2075];
int len = sizeof(stringbuffer);
for(ptr = result; ptr->ai_next != NULL; ptr = ptr->ai_next)
{
if(ptr->ai_family == AF_INET)
{
printf("Address: %s\n",InetNtop(ptr->ai_family,ptr->ai_addr,stringbuffer,len));
}
}

return 0;
}

getaddrinfo 抛出 11003 错误,我已经将很多互联网资源与 main 进行了比较,但我无法弄清楚为什么 getaddrinfo 会失败!我已经阅读了 winsock 错误代码描述,它说 11003“表示在数据库查找期间发生了某种不可恢复的错误”所以提前致谢 !编辑:我已经问过其他地方,但没有人给我解决方案,我被阻止了,我无法前进

最佳答案

正如nos在评论中提到的

memset(&hints, 0, sizeof(hints))

应该可以解决问题。

getaddrinfo() 尝试用提供的现有数据填充。垃圾数据混淆了功能。

关于c++ - getaddrinfo() 函数抛出错误 n 11003,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22748234/

59 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com