TCP服务器端程序

#include <winsock2.h>
#pragma comment(lib,"ws2_32.lib")
void SvrSock()
{
 //1、创建Socket
 SOCKET sockSvr = socket(AF_INET,SOCK_STREAM,IPPROTO_TCP);
 //2、绑定地址和端口
 SOCKADDR_IN addrSvr = {0};
 addrSvr.sin_family = AF_INET;
 addrSvr.sin_port = htons(5678);
 addrSvr.sin_addr.S_un.S_addr = INADDR_ANY;

 //绑定Socket
 bind(sockSvr,(SOCKADDR*)&addrSvr,sizeof(addrSvr));
 
 //监听
 listen(sockSvr,5);

 printf("等待客户端连接 ....");
 SOCKADDR_IN addrClient = {0};
 int nLen = sizeof(addrClient);
 
 SOCKET sockClient = accept(sockSvr,(SOCKADDR*)&addrClient,&nLen);

 printf("客户端已连接 !");
 char szText[100] = {0};
 recv(sockClient,szText,100,0);
 printf("%s \n",szText);

 char szSend[100] = "Hello Client,I am Server";
 Send(sockClient,szSend,sizeof(szSend),0);
 //关闭socket
 closesocket(sockClient);
 closesocket(sockSvr);
}
int main(int argc, char* argv[])
{
 //初始化Socket库
 WSADATA wsa = {0};
 WSAStartup(MAKEWORD(2,2),&wsa);
 //TCP服务器的建立
 SvrSock();
 return 0;
}
// netstat -a 显示所有端口状态
//telnet 127.0.0.1 5678  测试连接时候成功

posted @ 2012-12-15 23:26  中国男孩  阅读(142)  评论(0)    收藏  举报