Win32 网络编程中fd_set类型重定义问题

http://hi.baidu.com/auleaf/item/60aee0407c9420f4dd0f6c69

 

问题:Win32 网络编程中fd_set类型重定义

D:\Program    Files\Microsoft    Visual    Studio    .NET    2003\Vc7\PlatformSDK\Include\WinSock2.h(109):    error    C2011:    “fd_set”    :    “struct”类型重定义   
   D:\Program    Files\Microsoft    Visual    Studio    .NET    2003\Vc7\PlatformSDK\Include\WinSock2.h(144):    warning    C4005:    “FD_SET”    :    宏重定义   
   D:\Program    Files\Microsoft    Visual    Studio    .NET    2003\Vc7\PlatformSDK\Include\WinSock2.h(153):    error    C2011:    “timeval”    :    “struct”类型重定义   
   D:\Program    Files\Microsoft    Visual    Studio    .NET    2003\Vc7\PlatformSDK\Include\WinSock2.h(209):    error    C2011:    “hostent”    :    “struct”类型重定义   
   D:\Program    Files\Microsoft    Visual    Studio    .NET    2003\Vc7\PlatformSDK\Include\WinSock2.h(222):    error    C2011:    “netent”    :    “struct”类型重定义   
   D:\Program    Files\Microsoft    Visual    Studio    .NET    2003\Vc7\PlatformSDK\Include\WinSock2.h(229):    error    C2011:    “servent”    :    “struct”类型重定义   
   D:\Program    Files\Microsoft    Visual    Studio    .NET    2003\Vc7\PlatformSDK\Include\WinSock2.h(241):    error    C2011:    “protoent”    :    “struct”类型重定义   
   D:\Program    Files\Microsoft    Visual    Studio    .NET    2003\Vc7\PlatformSDK\Include\WinSock2.h

原因分析及解决方案:

头文件被包含了多次,

在默认windows.h会包含winsock.h,当你包含winsock2.h就会冲突,因此在包含windows.h前需要定义一个宏,去除winsock。h包含   
    
   #define    WIN32_LEAN_AND_MEAN   //去除一些不常用的
   #include    <windows.h>

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值