全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
使用vs演示时需要设置一下添加ws2_32.lib具体操作,添加位置 : “项目”-“属性”,之后出现界面点击输入“输入”后界面如下在“附加依赖项”后添加“ws2_32.lib”即可。服务器端程序#include stdafx.h#include #include using namespace std;void main(void)SOCKET sock;/1.启动SOCKET库,版本为2.0WORD wVersionRequested;WSADATA wsaData;int err;wVersionRequested = MAKEWORD( 2, 0 );err = WSAStartup( wVersionRequested, &wsaData );if ( err != 0 ) coutSocket2.0初始化失败,Exit!;return;if ( LOBYTE( wsaData.wVersion ) != 2 |HIBYTE( wsaData.wVersion ) != 0 ) WSACleanup();return; /2.创建套接字sock = socket(AF_INET,SOCK_DGRAM,0);if (sock = INVALID_SOCKET )coutSocket 创建失败,Exit!;return;/3.绑定sockaddr_in myaddr; /sockaddr_in相当于sockaddr结构memset(&myaddr,0,sizeof(myaddr);myaddr.sin_family=AF_INET;/如果绑定地址不是本机地址或者ADDR_ANY,则recvfrom函数不会正确接收,而是立刻返回 /myaddr.sin_addr.s_addr = inet_addr(192.168.0.7);myaddr.sin_addr.s_addr=ADDR_ANY;/端口号必须和客户发往的端口号一致myaddr.sin_port=htons(7861); bind(sock,(sockaddr*)&myaddr,sizeof(myaddr);int fromlength = sizeof(SOCKADDR);char buf256=;long number=0;while(1)number+;recv(sock,buf,sizeof(buf),0);coutnumber:bufendl;memset(buf,0,sizeof(buf);if (!closesocket(sock) WSAGetLastError();return;if (!WSACleanup()WSAGetLastError();return;客户端程序:#include stdafx.h#include #include using namespace std;void main()SOCKET sock; /socketchar szMsg = this is a UDP test package;/被发送的字段/1.启动SOCKET库,版本为2.0WORD wVersionRequested;WSADATA wsaData;int err;wVersionRequested = MAKEWORD( 2, 0 );err = WSAStartup(wVersionRequested, &wsaData );if ( err != 0 ) coutSocket2.0初始化失败,Exit!;return;if ( LOBYTE( wsaData.wVersion ) != 2 |HIBYTE( wsaData.wVersion ) != 0 ) WSACleanup( );return; /2.创建socket,sock = socket(AF_INET, /internetwork: UDP, TCP, etcSOCK_DGRAM, /SOCK_DGRAM说明是UDP类型0 /protocol);if (sock = INVALID_SOCKET ) coutSocket 创建失败,Exit!;return;/3.设置发往的地址sockaddr_in addrto; /发往的地址memset(&addrto,0,sizeof(addrto);addrto.sin_family=AF_INET;/以127开头的ip,并且客户和服务器在同一个局域网,服务方都可以接收(相当于广播);/指定服务方ip的可以接收 addrto.sin_addr.s_addr=inet_addr(127.0.0.1);/当然也可以换成自己机器的确切Ip/端口号必须和服务器绑定的端口号一致addrto.sin_port=htons(7861);int nlen=sizeof(addrto);unsigned int uIndex = 1;while(true)Sleep(1000);/从广播地址发送消息if( sendto(sock,szMsg,strlen(szMsg),0,(sockaddr*)&addrto,nlen)= SOCKET_ERROR )coutWSAGetLastError()endl;elsecoutuIndex+:an UDP
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年文化产业六月发展规划方案
- 人工智能赋能美育课程建设创新实践课件
- 山东省潍坊市青州市郑母初级中学2025-2026学年八年级下学期7月期末历史试题(文字版含答案)
- 复发性抑郁管理方案
- 新员工职业发展规划宣传
- 健康扶贫知识手册
- 2026年食品行业六月质量提升方案
- 2026年企业社会责任绩效改进方案
- 七年级下册语文病句修改精讲|语序搭配 成分残缺
- 四年级科学上册电路连接课|开关控制
- 中暑应急处置流程培训课件
- 2026上海市农产品质量安全中心公开招聘博士研究生笔试备考试题及答案详解
- 2025年中国铁道科学研究院集团有限公司招聘(178人)笔试历年参考题库附带答案详解
- ICU病房地震应急演练方案脚本
- 2026年健康评估期末复习过关检测附答案详解【黄金题型】
- 芳馨待客·茉莉茶韵传真情-小学五年级劳动教育教案
- 东方财富社招测评题库
- 2026年高空作业车租赁合同
- 超市卫生检查奖惩制度
- 新员工内部轮岗制度
- 基底节出血患者的活动能力训练
评论
0/150
提交评论