c – Winsock重新定义错误

前端之家收集整理的这篇文章主要介绍了c – Winsock重新定义错误前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
参见英文答案 > C++ Redefinition Header Files (winsock2.h)15个
我在Visual C 2010中编译一个项目,但是我有一些Winsock重新定义的问题.

首先我得到:

Syntax error : identifier 'SOCKADDR_STORAGE'

但是如果我包括winsock或winsock2或ws2tcpip我会收到许多错误,如下所示:

error C2011: 'sockaddr' : 'struct' type redefinition 
error C2011: 'WSAData' : 'struct' type redefinition
error C2011: 'linger' : 'struct' type redefinition

解决方法

你的问题是通过包括Windows.h,你也已经包括winsock.h.在这里你的问题出现在包括winsock2.h或ws2tcpip.h将尝试重新定义winsock.h中的一些定义

在Windows.h包括之前使用#define WIN32_LEAN_AND_MEAN,您可以停止编译器包含Windows.h附带的大量附加内容

猜你在找的C&C++相关文章