Client处理
在Socket处理的时候
1. WSADATA
2. WSASrartup
3. 建立本地的Socket
4. 建立本地的Socket地址
5. Connection(Socket,&sockaddr_in,sizeof(sockaddr_in)
6. 等待服务器响应 然后发送请求 Send(socket,SendData,strlen(SendData),0)
7. 接收服务器的响应需要建立缓冲区
char c_str[m];recv(socket,c_str,strlen(c_str),0)
8. 完了之后closeSocket();断开socket
9. WSACleanup()
Sever处理
1. WSADATA
2. WSAStartup();
3. 创建服务器端SocketSever
4. 设立服务器端sockaddr_int服务器端socket地址
5. bind服务器端套接字可服务器端地址bind(socketSever,sockaddr_in,sizeof(sockaddr_in)
6. 开始监听 用listen监听有没有客户端请求服务端
Listen(socketsever,5);
7. 建立缓存客户端的socket和sockaddr_in用来接收客户端的socket和sockaddr_in;
8. 建立接收内容char temp[100]这里在这里相当于缓冲区用来接收客户端的请求;
9. 同意连接accept接收客户端的Socket在accept参数中sockaddr_int这个是用来接收客户端的地址;accept(SocketSever,(sockaddr_in*)&SockAddr_in_Client,sizeof(SockAddr_in_Client),accept返回一个客户端的socket然后客户端的socketaddress保存在sockaddr_in中
10. 接收数据建立接收的数据缓冲区RecvData,这里需要直接使用accept得到的客户端的socket
recv客户端recv(SocketClient,RecvData,sizeof(RecvData):
11.服务端可以向客户端发送数据;
Send(SocketClient,SendData,sizeof(SendData),0)
记住这里的SocketClient是从accept那里得到的Socket accept会返回一个客户端的socket,而且还给了sockaddr_int
12.关闭客户端套接字close(SocketClient)
13.关闭服务端套接字close(SocketSever)
14.WSACleanup();