读书人

关于编译l异常的有关问题是链接有关

发布时间: 2012-01-26 19:40:46 作者: rapoo

关于编译l错误的问题,是链接问题,求解答
我的代码:
#include "stdafx.h"
#include "Winsock2.h"
#include "stdio.h"


void main()
{
//初始化socket编程环境
WORD wVersionRequested;
WSADATA wsaData;
int err;
wVersionRequested = MAKEWORD( 1, 1 );
err = WSAStartup( wVersionRequested, &wsaData );
if ( err != 0 )
{
return;
}

if ( LOBYTE( wsaData.wVersion ) != 1 || HIBYTE( wsaData.wVersion ) != 1 )
{
WSACleanup( );
return;
}

//建立客户端socket
SOCKET sockClient = socket( AF_INET ,SOCK_STREAM , 0 ) ;

//服务器地址
SOCKADDR_IN addrSrv ;
addrSrv.sin_addr.S_un.S_addr = inet_addr("172.16.2.247") ;
addrSrv.sin_family = AF_INET ;
addrSrv.sin_port = htons( 2000 ) ;

//连接服务器
connect( sockClient , (SOCKADDR*)&addrSrv , sizeof(SOCKADDR)) ;

//等待接收服务器的响应
char recvBuf[100];
recv( sockClient , recvBuf , 100 , 0 ) ;
printf( "%s " , recvBuf ) ;
char sendBuf[100] ;
sprintf( sendBuf , "%s" , "this is zhang san" ) ;
send( sockClient , sendBuf , strlen(sendBuf)+1 , 0 ) ;
closesocket( sockClient ) ;

WSACleanup() ;

}

编译后出现链接问题:
error LNK2001: unresolved external symbol _strlen
error LNK2001: unresolved external symbol _sprintf
error LNK2001: unresolved external symbol _printf
error LNK2001: unresolved external symbol __chkesp
LINK : error LNK2001: unresolved external symbol _mainCRTStartup
Debug/text.exe : fatal error LNK1120: 5 unresolved externals
Error executing link.exe.


[解决办法]
需要修改编译器的设置:
属性页:system->子系统->改为控制台

读书人网 >VC/MFC

热点推荐