tcp套接字编程.doc

tcp套接字编程.doc

ID:48580297

大小:45.00 KB

页数:6页

时间:2020-02-26

tcp套接字编程.doc_第1页
tcp套接字编程.doc_第2页
tcp套接字编程.doc_第3页
tcp套接字编程.doc_第4页
tcp套接字编程.doc_第5页
资源描述:

《tcp套接字编程.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、《网络编程技术》实验报告得分:班级姓名学号实验名称实验二TCP套接字编程实验室号实验目的掌握单用户客户端跟服务器的连接和数据交互及处理。实验要求1.认真阅读和掌握本实验的相关知识点。2.上机编写并运行本程序。3.保存程序的运行结果,并结合程序进行分析。实验内容实现一个基于TCP协议的服务器-客户端程序,要求完成以下功能。客户端:从命令行读入服务器的IP地址;并连接到服务器;循环从命令行读入一行字符串,并传递给服务器,由服务器对字符串反转,并将结果返回客户程序,如果用户输入的是quit,则关闭连接;客

2、户程序显示反转后的字符串;服务器端:循环接收客户的连接请求,并显示客户的IP地址和端口号;接收客户传来的字符串,反转后传递给客户;实验步骤或源代码服务器端:#include#include#include#include#include#include#include#include#include

3、>#include#defineMAXDATASIZE100#definePORT2345intmain(){intsockfd,connfd;structsockaddr_inserver,server;structsockaddr_inclient;socklen_tlen;charbuf[MAXDATASIZE];charsendbuf[MAXDATASIZE];inti,num,j;intopt=SO_REUSEADDR;if((sockfd=socket(AF_INET

4、,SOCK_STREAM,0))==-1){perror("socket()error");exit(1);}setsockopt(sockfd,SOL_SOCKET,SO_REUSEADDR,&opt,sizeof(opt));bzero(&server,sizeof(server));server.sin_family=AF_INET;server.sin_addr.s_addr=htonl(INADDR_ANY);server.sin_port=htons(PORT);if(bind(so

5、ckfd,(structsockaddr*)&server,sizeof(server))==-1){perror("bind()error"");exit(1);}if(listen(sockfd,20)==-1){perror("listen()error"");exit(1);}while(1){len=sizeof(client);if((connfd=accept(sockfd,(structsockaddr*)&client,&len))==-1){perror("accept(

6、)error"");exit(1);}printf("clientIPis%s,PORTis%d",inet_ntoa(client.sin_addr),ntohs(client.sin_port));while(1){If((num=recv(connfd,buf,MAXDATASIZE,0))==-1);{Perror(“recv()error!”);Exit(1);}printf("recivebufis%s",buf);for(j=0;j

7、=buf[j];send(connfd,sendbuf,n,0);if(!strcmp(buf,”quit”))break;}close(connfd)}close(sockfd);}客户端源代码如下:#include#include#include#include#include#include#include#include

8、>#include#include#defineMAXDATASIZE100#definePORT2345intmain(intargc,char*argv[]){structsockaddr_inserver;charbuf[MAXDATASIZE];intsockfd,num;structhostent*he;if(argc!=2){printf(“youmustinputlikethis:%s”,argv[

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。