C++ 中winsock源代码应用错误

hhxz770 2002-04-13 09:58:02
1.
A.我在C++中调用winsock函数编译老出错:
  Cpp1.obj : error LNK2001: unresolved external symbol __imp__WSACleanup@0
Cpp1.obj : error LNK2001: unresolved external symbol __imp__gethostname@8
Cpp1.obj : error LNK2001: unresolved external symbol __imp__WSAStartup@8
Debug/Cpp1.exe : fatal error LNK1120: 3 unresolved externals
Error executing link.exe.

B.如在开始中加入extern "c" 问题同上;

C.原代码如下:

#include <iostream>
#include <winsock2.h>
using namespace std;
//extern "c";

int main()
{
WSADATA words ;
if(WSAStartup(MAKEWORD(2,2),&words)!=0)
{cout << "Winsock init failed!";}
char *pi;
pi=new char;
gethostname(pi,1024);
cout <<"You host name: "
<< *pi
<< endl;
WSACleanup();
return 1;
}
...全文
39 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
wolaiye3 2002-04-13
  • 打赏
  • 举报
回复
高!
huyx_13 2002-04-13
  • 打赏
  • 举报
回复
缺少库文件Wsock32.lib
neccui 2002-04-13
  • 打赏
  • 举报
回复
包含相应的库文件。

有两个都可以,

除了wsock32.lib,还有ws2_32.lib
rovoboy 2002-04-13
  • 打赏
  • 举报
回复
#include <winsock.h>
  • 打赏
  • 举报
回复
把winsock的库包含进来。Wsock32.lib
cwanter 2002-04-13
  • 打赏
  • 举报
回复
要在工程中包含“WINSOCK。LIB”文件。
hhxz770 2002-04-13
  • 打赏
  • 举报
回复
各位高手,不错加入link就行了,哈哈,谢了,收分.
cwanter最多,他说得最详细,正适合我这种人学
cwanter 2002-04-13
  • 打赏
  • 举报
回复
在WINDOWS VC6.0里为Project->Setting->link->Object/module libray:加入Wsock32.lib,如果是用命令行的话在link 参数表里加上Wsock32.lib.其它工具没用过。
cun 2002-04-13
  • 打赏
  • 举报
回复
在“project”里面找到“setting”,点击她,选择link属性页,加入ws2_32.lib


如果你用的是VC
cwanter 2002-04-13
  • 打赏
  • 举报
回复
你是用什么工具?
hhxz770 2002-04-13
  • 打赏
  • 举报
回复
不对,不对,我是纯c++ 下面的程序,我库中已经加了#include <winsock2.h>
了,即使加了#include <winsock.h>也是一样的错误。加winsock.lib,在c++中还真不知如何加了.help me!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
Luck_xyl 2002-04-13
  • 打赏
  • 举报
回复
如何知道在调用的程序中应当加什么库文件?
cococut 2002-04-13
  • 打赏
  • 举报
回复
setting->link中加入
ws2_32.lib就可以

69,382

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧