客户端
1.创建套接字
SOCKETsockClient = socket(AF_INET, SOCK_STREAM, 0) ;
2.向服务器发出连接请求
SOCKADDR_INaddrSrv ;
addrSrv.sin_addr.S_un.S_addr =inet_addr(“192.168.0.1”) ;
addrSrv.sin_family = AF_INET ;
addrSrv.sin_port = htons(6000) ;
connect(sockClient, (SOCKADDR*)&addrSrv, sizeof(SOCKADDR)) ;
3.和服务器进行通信
recv(sockClient,szRecvBuf, 100, 0) ;
send(…)
4.关闭套接字
服务端
1.创建套接字
SOCKETsockSrv = socket(AF_INET, SOCK_STREAM, 0) ;
2:将套接字绑定到本地地址和端口上
SOCKADDR_INaddrSrv ;
addrSrv.sin_addr.S_un.S_addr =htonl(INADDR_ANY) ; //把一个u_long类型的值转化为网络字节顺序
addrSrv.sin_family = AF_INET ;
addrSrv.sin_port = htons(6000) ;
bind(sockSrv, (SOCKADDR*)&addrSrv, sizeof(SOCKADDR)) ; //绑定创建了的套接字
3.将创建的套接字设为监听模式,等待接收客户端的请求
listen(sockSrv,5) ;
4.等待客户请求的到来,当请求到来后,接收连接请求,返回一个新的对于与此次连接的套接字
SOCKETsockConn = accept(sockSrv, (SOCKADDR *)&addrClient, &len) ;
5.用返回的套接字和客户端进行通信
send(sockConn,szSendBuf, lstrlen(szSendBuf) + 1, 0) ;
recv(sockConn, szRecvBuf, 100, 0) ;
6.返回,等待另一个客户的请求
closesocket(sockConn) ;
7.关闭套接字