我正在尝试使用c ++进行窗口套接字编程。我正在使用winsock2.h来实现此目的。我正在使用GNU GCC在代码块中执行此操作,并在附件中显示错误,如您所见。重要的是要知道我只尝试客户端服务器模型。 我没有把我的代码放在这里,因为代码在msdn上可用(我刚从那里复制过)。我只是提供链接
服务器代码 https://msdn.microsoft.com/en-us/library/windows/desktop/ms737593(v=vs.85).aspx
客户端代码 https://msdn.microsoft.com/en-us/library/windows/desktop/ms737591(v=vs.85).aspx
答案 0 :(得分:1)
发表评论,但有足够的信心做出回答......
您包含的屏幕截图显示了链接器错误,因此所有内容都可能正确编译。要使用WinSock2,您的程序必须与Ws2_32.lib
链接,WinSock2.h
是Windows SDK附带的标准系统库。
SDK代表软件开发工具包。它包含许多为Windows编写软件所需的头文件和库。很抱歉,如果这太基本,但是......您包含了头文件Ws2_32.lib
。该标头仅包含所有WinSock函数的声明 - 只是函数的描述。函数定义(函数的代码)位于一个库中,您必须" link"用。在某些情况下,您将获得可以编译的库的源代码,但大多数情况下您只会获得预编译的LIB文件,例如@Before
。 Windows SDK包含可以为Windows编写的大多数程序的LIB文件。
有关详细信息,请搜索"链接"," Win32库"和"动态链接库" (DLL)的