非常简单的一段代码.在别人的例子里面是可以用的,我可以编译通过,可是我自己新建了一个工程怎么就不行了呢?
就是下面这一点点代码:
#include <stdio.h>
#include <winsock.h>void main()
{
WORD VersionRequested = MAKEWORD(1,1);//确定winsock的版本
WSADATA wsaData;

WSAStartup(VersionRequested, &wsaData); // 启动winsock服务
if ( wsaData.wVersion != VersionRequested )
{
printf("Wrong version or WinSock not loaded\n");
}
}可是老是有错误.而且莫名其妙.错误如下:
main.obj : error LNK2001: unresolved external symbol _WSAStartup@8
Debug/demo8.exe : fatal error LNK1120: 1 unresolved externals
Error executing link.exe.demo8.exe - 2 error(s), 0 warning(s)
这究竟是怎么回事啊????大家帮帮我吧

解决方案 »

  1.   

    楼上的.我把Ws2_32.lib加入到link里了.行了.太感谢了.不过我不明白为什么要加上这个呢?这个东西是干什么的呢?是不是每次都要手动加上啊?
      

  2.   

    #pragma comment(lib,"Ws2_32.lib")
      

  3.   

    那个winsock.h对应的实现文件就在这个.lib里,当然要包含啦。
      

  4.   

    也可以在project->settings->link里面加上ws2_32.lib
      

  5.   

    不用急,来者有分.只是第一个给的多点而已.谁有兴趣加我QQ15172470让我来请教socket编程的,我先给他20分:)