gpt4 book ai didi

c++ - 在 Winsock.h 中获取未声明的标识符错误

转载 作者:行者123 更新时间:2023-11-30 00:53:10 25 4
gpt4 key购买 nike

我正在尝试编译代码

#include <Header1.h>
#include "Header2..h"
#include <ctype.h>

Header1.h 包含winsock.hHeader2.h 包含windows.h

我正在使用 winsock.h 而不是 winsock2.h 因为 winsock2.h 显示重定义错误,这是一个标准错误,但我无法使用提供给他们的解决方案来解决这个问题。

我也试过包含 ws2tcpip.h,但它在 winsock.h 中给出了大量的重新定义错误。

我在这个模块中遇到了 12 个错误

error C3861: 'close': identifier not found
error C2664: 'setsockopt' : cannot convert parameter 4 from 'timeval *' to 'const char *'
error C2065: 'socklen_t' : undeclared identifier
error C2146: syntax error : missing ';' before identifier 'optionLength'
error C2065: 'optionLength' : undeclared identifier
error C2065: 'optionLength' : undeclared identifier
error C2664: 'setsockopt' : cannot convert parameter 4 from 'int32 *' to 'const char *'
error C2065: 'MSG_WAITALL' : undeclared identifier
error C2664: 'recvfrom' : cannot convert parameter 2 from 'uint8 *' to 'char *'
error C2065: 'ERROR_END_OF_STREAM' : undeclared identifier
error C3861: 'close': identifier not found
error C3861: 'close': identifier not found

最佳答案

添加#include <winsock2.h>#include <ws2tcpip.h>在包含的顶部。

#include <winsock2.h> 
#include <Header1.h>
#include "Header2.h"
#include <ctype.h>

winsock.h 应该首先包含在内。我注意到您的代码似乎是 unixish 代码。在 window 上,closesocket用于关闭套接字。

关于c++ - 在 Winsock.h 中获取未声明的标识符错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17184547/

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