- 1、本文档共4页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
点对点通信的聊天程序设计文档
点对点通信的聊天程序设计文档
需求分析:
服务端启动后建立链接,等待客户端接入。
客户端接入后,服务端与客户端可以进行点对点通讯。
概要设计:
服务器首先启动,创建套接字后等待客户的连接;客户启动以后,创建套接字,然后和服务器建立连接;连接建立后,客户机和服务器可以通过建立的套接字连接进行信息通信。
具体实现及关键代码分析:
----Serv.cpp----
#include stdio.h
#include winsock2.h
#include string.h
#pragma comment(lib,ws2_32.lib)
void main()
{
/*初始化*/
WSADATA wsaData;
WSAStartup(MAKEWORD(2,2),wsaData);
SOCKET Serv;
SOCKET Client;
char buffer[1024];
SOCKADDR_IN addr;
int result=0;
unsigned short int nPort=5001;
addr.sin_addr.S_un.S_addr = htons(INADDR_ANY);
addr.sin_family=AF_INET;
addr.sin_port = htons(nPort);
/*创建套接字*/
Serv = socket(AF_INET,SOCK_STREAM,IPPROTO_TCP);
/*绑定地址*/
bind(Serv,(SOCKADDR*)addr,sizeof(addr));
/*开始监听*/
listen(Serv,5);
/*接受并处理数据*/
Client = accept(Serv,NULL,NULL);
printf(\n);
while(strcmp(buffer,end)!=0)
{
memset(buffer,0,sizeof(buffer));
result = recv(Client,buffer,sizeof(buffer),0);
if(result0)
{
printf(Client said: %s\n,buffer);
}
}
/*关闭服务*/
closesocket(Serv);
closesocket(Client);
WSACleanup();
}
----Client.cpp----
#include stdio.h
#include string.h
#include winsock2.h
#pragma comment(lib,ws2_32.lib)
void main()
{
WSADATA wsaData;
SOCKET Client;
int result=0;
char buffer[1024];
SOCKADDR_IN addr;
WSAStartup(MAKEWORD(2,2),wsaData);
addr.sin_addr.S_un.S_addr = inet_addr(127.0.0.1);
addr.sin_family = AF_INET;
addr.sin_port = htons(5001);
/*创建套接字*/
Client= socket(AF_INET,SOCK_STREAM,IPPROTO_TCP);
/*链接地址*/
connect(Client,(SOCKADDR*)addr,sizeof(addr));
memset(buffer,0,sizeof(buffer));
printf(Input Message: );
/*输入字符串并打印传送*/
scanf(%s,buffer);
while(strcmp(buffer,end)!=0)
{
send(Client,buffer,strlen(buffer),0);
memset(buffer,0,sizeof(buffer));
printf(Input Message: );
scanf(%s,buffer);
}
send(Client,end,sizeof(end),0);
closesocket(Client);
WSACleanup();
}
您可能关注的文档
- 浅议现代交际礼仪.doc
- 品牌战略讲座.ppt
- 前安装的回潮率测湿仪.doc
- 日程表及相关资料.doc
- 凡客资料.doc
- 高中复习:导数应用(图象交点与根的个数).doc
- 细胞移植技术修复关节软骨缺损的临床应用进展.pdf
- 集体备课:通向有效课堂的捷径.doc
- 芜湖港:2011年第一次临时股东大会会议资料.pdf
- 2010备春耕指导意见.doc
- Haier海尔413升风冷变频多门冰箱 BCD-413WGHFD1BSJU1(白)说明书用户手册.pdf
- Siemens西门子工业抽屉式断路器主回路后垂直连接 抽屉式断路器主回路后垂直连接使用手册.pdf
- Samsung三星智能佩戴设备 Galaxy Fit3安全手册.pdf
- Samsung三星滚筒洗衣机 AI神 黑钻热泵洗烘旗舰 WD18DB8995BZSC使用手册.pdf
- Sakura樱花消毒柜 保洁柜消毒柜 SCQ-130D6用户手册说明书.pdf
- Hifiman头领科技ARYA UNVEILED说明书用户手册.pdf
- Siemens西门子工业抽屉式主回路连接前置端子 支撑件 抽屉式主回路连接前置端子 支撑件使用手册.pdf
- Siemens西门子工业中性线的外部电流传感器 中性线的外部电流传感器使用手册.pdf
- Siemens西门子工业电子脱扣单元 电子脱扣单元使用手册.pdf
- Razer雷蛇Playstation 专用雷蛇战锤狂鲨极速版 RZ12-038203 用户指南 (简体中文)说明书用户手册.pdf
最近下载
- 腰椎的解剖及腰部的层次解剖ppt参考课件.ppt
- 知识产权助推新质生产力发展.pptx VIP
- NB∕T 10805-2021 水电工程溃坝洪水与非恒定流计算规范.pdf
- 2022年鄄城县工会系统招聘考试题库及答案解析.docx VIP
- 2024年医师定期考核必考题库及答案.pdf
- 2023年互联网信息审核员理论考试题库(含答案).pdf VIP
- 2024中考语文《西游记》历年真题专练(学生版+解析版).pdf VIP
- 高中音乐鉴赏测试题.doc VIP
- 人教三上数学《数学广角—集合》单元作业设计方案(13页).pdf VIP
- 省级政府和重点城市一体化政务服务能力调查评估报告2021年.pdf VIP
文档评论(0)