UDP通信服务器和客户端 VC++.doc_第1页
UDP通信服务器和客户端 VC++.doc_第2页
UDP通信服务器和客户端 VC++.doc_第3页
UDP通信服务器和客户端 VC++.doc_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

UDP通信服务器和客户端 VC+服务器端:/ udpserver.cpp : 定义控制台应用程序的入口点。/#include stdafx.h#include winsock2.h#define BUF_ZIZE 64#include using namespace std;#pragma comment(lib,ws2_32.lib)int _tmain(int argc, _TCHAR* argv) WSADATA wsd; SOCKET sServer; SOCKET sClient; SOCKADDR_IN addrServ; SOCKADDR_IN addrClient; char bufBUF_ZIZE; int retVal; /初始化套接字动态库 if(WSAStartup(MAKEWORD(2,2),&wsd) != 0) coutWSAStartup errorendl; return 1; /创建套接字 sServer = socket(AF_INET,SOCK_DGRAM,IPPROTO_UDP); if(INVALID_SOCKET = sServer) coutsocket errorendl; WSACleanup(); return -1; /创建客户端套接字 sClient = socket(AF_INET,SOCK_DGRAM,IPPROTO_UDP); if(INVALID_SOCKET = sClient) coutClient socket failedendl; WSACleanup(); return -1; /服务器套接字 addrServ.sin_addr.s_addr = INADDR_ANY; addrServ.sin_port = htons(4999); addrServ.sin_family = AF_INET; /绑定套接字 retVal = bind(sServer,(LPSOCKADDR)&addrServ,sizeof(SOCKADDR_IN); if(retVal = SOCKET_ERROR) coutbind erroeendl; WSACleanup(); return -1; int len = sizeof(SOCKADDR); /开始等待客户端发来消息 recvfrom(sServer,buf,BUF_ZIZE,0,(SOCKADDR*)&addrClient,&len); coutbufendl; addrClient.sin_family = AF_INET; addrClient.sin_addr.s_addr = inet_addr(127.0.0.1); addrClient.sin_port = htons(short)4999); /发送给客户端 ZeroMemory(buf,BUF_ZIZE); strcpy(buf,知道了); sendto(sClient,buf,BUF_ZIZE,0,(SOCKADDR*)&addrClient,sizeof(SOCKADDR); system(pause); closesocket(sServer); WSACleanup(); return 0;客户端:/ udpclient.cpp : 定义控制台应用程序的入口点。/#include stdafx.h#define BUF_SIZE 64#include winsock2.h#pragma comment(lib,ws2_32.lib)#includeusing namespace std;int _tmain(int argc, _TCHAR* argv) WSADATA wsd; SOCKET sHost; SOCKET sClient; SOCKADDR_IN servAddr; char bufBUF_SIZE; char cufBUF_SIZE; int retVal; /初始化套接字动态库 if(WSAStartup(MAKEWORD(2,2), &wsd) != 0) coutWSAStartup failedendl; return -1; /创建套接字 sHost = socket(AF_INET,SOCK_DGRAM,IPPROTO_UDP); if(INVALID_SOCKET = sHost) coutsocket failedendl; WSACleanup(); return -1; /创建客户端套接字 sClient = socket(AF_INET,SOCK_DGRAM,IPPROTO_UDP); if(INVALID_SOCKET = sClient) coutClient socket failedendl; WSACleanup(); return -1; /设置服务器地址 servAddr.sin_family = AF_INET; servAddr.sin_addr.s_addr = inet_addr(127.0.0.1); servAddr.sin_port = htons(short)4999); int nServAddlen = sizeof(servAddr); /发消息送到服务器 ZeroMemory(buf,BUF_SIZE); strcpy(buf,快了); sendto(sHost,buf,BUF_SIZE,0,(SOCKADDR*)&servAddr,sizeof(SOCKADDR); int len = sizeof(SOCKADDR); /开始等待服务端发来消息 ZeroMemory(cuf,BUF_SIZE); recvfrom(sCl

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论