ient'sip%s,port%dattime%ld.%ld\n",inet_ntoa(client.sin_addr),htons(client.sin_port),tv.tv_sec,tv.tv_usec);intiret=-1;while(1){iret=recv(connectfd,buf,MAXRECVLEN,0);if(iret>0){printf("%s\n",buf);}else{close(connectfd);break;}/*printclient'sipandport*/send(connectfd,buf,iret,0);/*emessage*/}}close(listenfd);/*closelistenfd*/return0;}复制代码(3)编译运行以上两个程序放在同一个目录下,比如/home/horstxu/Cprog/tcpCSmodel命令行进入该目录$cd/home/horstxu/Cprog/tcpCSmodel命令行执行$gcc-oclientclient.c,可以编译出客户端程序。命令行执行$gcc-oserverserver.c,可以编译出服务端程序。命令行执行$./server,启动server程序。这时你可能需要重新打开一个命令行窗口,到刚才的目录下,执行$./client127.0.0.1,启动客户端程序,就可以看到结果了。客户端:服务器端:本程序客户端会自动退出,服务器不会,因此如果想停掉服务器程序,直接在命令行界面按键盘Ctrl+C停止。程序实现的功能很简单,就是服务器监听4321端口,客户端与之建立TCP连接后,再发送字符串“horst\n”到服务端,服务端打印出来,然后再把字符串传回给客户端,客户端再打印出来。然后客户端关闭连接退出,而服务端继续监听4321端口等待下一次连接。linux教程