getaddrinfo() 函数抛出错误 n 11003
getaddrinfo() function throw error n 11003
这把我逼疯
了#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 %dn",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 %dn",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: %sn",InetNtop(ptr->ai_family,ptr->ai_addr,stringbuffer,len));
}
}
return 0;
}
getaddrinfo 抛出 11003 错误,我已经将很多互联网资源与 main 进行了比较,但我无法弄清楚为什么 getaddrinfo 失败了!我已经阅读了Winsock错误代码说明,它说11003"表示在数据库查找期间发生了某种不可恢复的错误",因此提前感谢!编辑:我已经问过其他地方,但没有一个给我解决方案,我被阻止了,我无法前进
正如nos在评论中提到的
memset(&hints, 0, sizeof(hints))
应该做这个伎俩。
getaddrinfo()
尝试填充提供的现有数据。垃圾数据混淆了函数。
相关文章:
- 警告处理为错误这里有什么问题
- "error: no matching function for call to"构造函数错误
- boost::进程间消息队列引发错误
- C++,OpenCV,尝试显示图像时"OpenCV(4.3.0) Error: Assertion failed (size.width>0 && size.height>0)"此错误
- 有关插入适配器的错误。[错误]请求从 'back_insert_iterator<vector<>>' 类型转换为非标量类型
- QT在错误的班级中寻找空位
- vector.resize()中的分配错误
- 代码在main()中运行,但在函数中出现错误
- 释放错误后堆使用
- (C++)分析树以计算返回错误值的简单算术表达式
- Project Euler问题4的错误解决方案
- 我的字符计数代码计算错误.为什么
- 从"int*"强制转换为"unsigned int"会丢失精度错误
- 尝试导入pybind-opencv模块时出现libgtk错误
- CMake项目Boost库错误:Boost/config/compiler/gcc.hpp:165:10:致命错误:cs
- 在某些循环内使用vector.push_back时出现分段错误
- MSVC多行宏编译器错误
- 静态数据成员的问题-修复链接错误会导致编译器错误
- 为什么在运行时没有向我们提供有关分段错误的更多信息?
- getaddrinfo() 函数抛出错误 n 11003