Winsock2.h与windows.h重定义问题解决

在进行IPV6兼容升级时,遇到包含winsock2.h后编译报错,如'struct'类型重定义等问题。错误源于winsock2.h与windows.h的冲突。解决方法包括:1) 使用宏`#define WIN32_LEAN_AND_MEAN`;2) 调整头文件包含顺序,先包含winsock2.h再包含windows.h;3) 如果出现特定错误,检查工程是否误包含<afxwin.h>,确保winsock2.h在其后引入。
摘要由CSDN通过智能技术生成

最近做IPV6兼容升级,发现包含了winsock2.h后,会出现编译报错。部分报错信息如下:


winsock2.h(109) : error C2011: 'fd_set' : 'struct' type redefinition
winsock2.h(144) : warning C4005: 'FD_SET' : macro redefinition
winsock.h(88)   : see previous definition of 'FD_SET'
winsock2.h(153) : error C2011: 'timeval' : 'struct' type redefinition
winsock2.h(209) : error C2011: 'hostent' : 'struct' type redefinition
winsock2.h(222) : error C2011: 'netent' : 'struct' type redefinition
winsock2.h(229) : error C2011: 'servent' : 'struct' type redefinition
winsock2.h(241) : error C2011: 'protoent' : 'struct' type redefinition
winsock2.h(397) : error C2011: 'sockaddr_in' : 'struct' type redefinition
winsock2.h(407) : error C2011: 'WSAData' : 'struct' type redefinition


经过调查,发现是由于我原

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值