//服务器程序
#include <>
#include <>
int main()
{
//进行版本协商
WORD wVersionRequested;
WSADATA wsaData;
int err;
wVersionRequested = MAKEWORD( 1, 1 );
err = WSAStartup( wVersionRequested, &wsaData );
if ( err != 0 )
return -1;
if ( LOBYTE( ) != 1 ||
HIBYTE( ) != 1 )
{
WSACleanup( );
return -1;
}
SOCKET sockSrv = socket(AF_INET,SOCK_DGRAM,0);
SOCKADDR_IN addrSrv;
= htonl(INADDR_ANY);
= AF_INET;
= htons(6000);
bind(sockSrv,(SOCKADDR*)&addrSrv,sizeof(addrSrv));
char recvBuf[100];
char sendBuf[100];
char tempBuf[100];
SOCKADDR_IN addClient;
int len = sizeof(SOCKADDR);
while(1)
{
//接收数据
recvfrom(sockSrv,recvBuf,100,0,(SOCKADDR*)&addClient,&len);
//判断对话是否应该被终止
if('#' == recvBuf[0])
{
sendto(sockSrv,"#",strlen("#")+1,0,(SOCKADDR*)&addClient,len);
printf("chat end!\n");
break;
}
//打印接收的数据
sprintf(tempBuf,"%s says:
%s",inet_ntoa(),recvBuf);
printf("%s\n",tempBuf);
//发送数据
printf("please input da
VC++-网络编程Socket-服务器与客户端 来自淘豆网www.taodocs.com转载请标明出处.