/************************************== *
*檔名:
tcp_client.c *
*檔案描述:
tcp迴圈伺服器客戶端 *
*xue,
2012、07
、26 *
************************************=*/
#include
#include
#include
#include
#include
#include
#include
#include
#define buffer 1024
#define port 7777
int main(int argc, char *argv)
bzero(&server_addr, sizeof (server_addr));
server_addr.sin_family= af_inet;
server_addr.sin_port= htons (port);
server_addr.sin_addr.s_addr= htonl (inaddr_any);
rel =connect (client_sockfd, (struct sockaddr *)&server_addr, sizeof(server_addr));
if(rel < 0)
printf("wait for the server send someting to client\n");
while(1)
memset(buffer, 0, sizeof (buffer));
printf("please input someting send to the server!\nclient:");
fgets(buffer, buffer, stdin);
if(!(strncmp (buffer, "quit", 4)))
n = send (client_sockfd, buffer, strlen (buffer), 0);
if(n > 0)
}close(client_sockfd);
return 0; }
/************************************== *
*檔名:
tcp_server.c *
*檔案描述:
tcp迴圈伺服器伺服器端 *
*xue,
2012、07
、26 *
************************************=*/
#include
#include
#include
#include
#include
#include
#include
#include
#define buffer 1024
#define port 7777
int main(int argc, char *argv)
bzero(&server_addr, sizeof (server_addr));
server_addr.sin_family= af_inet;
server_addr.sin_port= htons (port);
server_addr.sin_addr.s_addr= htonl (inaddr_any);
rel = bind (server_sockfd, (struct sockaddr *)&server_addr, sizeof(server_addr));
if(rel < 0)
rel =listen (server_sockfd, 5);
if(rel < 0)
memset(buffer, 0, buffer);
while(1)
while(1)
n =send(client_sockfd, buffer, strlen(buffer), 0);
if(n > 0)
else
n =recv (client_sockfd, buffer, buffer, 0);
if(n > 0)
else
} close(client_sockfd); }
close(server_sockfd);
return0; }
首先,編譯後,先執行伺服器
server
[root@localhostlianxi]# ./server
waitthe new client to connection!
再執行客戶端
[root@localhostlianxi]# ./client
waitfor the server send someting to client
接著就可以實現同步通訊了。
Socket 聊天小程式
伺服器端 server.c include include include include include include include in.h include include include define buflen 1024 define port 6666 define listnum ...
基於Linux的聊天小程式,前期總結
到目前為止,小小專案大改了兩次。第一次實現了點對點的聊天,使用tcp套接字實現。第二次在第一次的基礎上實現了多執行緒處理聊天事件,通過執行緒同步實現。我把部分核心 貼出來,供大家交流。總 量上千,全部貼出來不方便。客戶端和服務端都只分享主函式和執行緒函式。server void recvandsen...
Python實現聊天小程式
import socket import sys host port 10001 server socket socket.socket socket.af inet,socket.sock stream server socket.setsockopt socket.sol socket,sock...