服务器端(接收端)程序:
1、创建套接字(socket)。
2、将套接字绑定到一个本地地址和端口上(bind)。
3、等待接收数据(recvfrom)。
4、关闭套接字。
客户端(发送端)程序:
1、创建套接字(socket)。
2、向服务器发送数据(sendto)。
3、关闭套接字。
服务器端代码:
/*
*UDP Server
*2008-12-04
*/
#include <winsock2.h>
#include <stdio.h>
void main(){
//初始化
WORD wVersionRequired;
WSAData wsaData;
wVersionRequired = MAKEWORD(2,2);
WSAStartup(wVersionRequired,&wsaData);
//创建socket
SOCKET server;
server = socket(AF_INET,SOCK_DGRAM,0);
//绑定
SOCKADDR_IN addr;
addr.sin_family = AF_INET;
addr.sin_addr.S_un.S_addr = htonl(INADDR_ANY);
addr.sin_port = htons(6006);
bind(server,(SOCKADDR*)&addr,sizeof(SOCKADDR));
//接收
char recvBuf[100];
int recvLen;
SOCKADDR_IN clientAddr;
int fromLen;
recvLen = 100;
fromLen = sizeof(SOCKADDR);
recvfrom(server,recvBuf,recvLen,0,(SOCKADDR*)&clientAddr,&fromLen);
printf("Receive:%s",recvBuf);
//发送
char * sendBuf;
int sendLen;
sendBuf = "Message from Server!\n";
sendLen = strlen(sendBuf) + 1;
sendto(server,sendBuf,sendLen,0,(SOCKADDR*)&clientAddr,fromLen);
//关闭
closesocket(server);
WSACleanup();
}
客户端程序:
/*
*UDP Client
*2008-12-04
*/
#include <winsock2.h>
#include <stdio.h>
void main(){
WORD wVersionRequired;
WSAData wsaData;
wVersionRequired = MAKEWORD(2,2);
WSAStartup(wVersionRequired,&wsaData);
SOCKET client;
client = socket(AF_INET,SOCK_DGRAM,0);
char sendBuf[100];
int len;
SOCKADDR_IN addr;
int toLen;
char *temp = "Message from Client!\n";
sprintf(sendBuf,"%s",temp);
len = strlen(sendBuf)+1;
addr.sin_family = AF_INET;
addr.sin_addr.S_un.S_addr = inet_addr("127.0.0.1");
addr.sin_port = htons(6006);
toLen = sizeof(SOCKADDR);
sendto(client,sendBuf,len,0,(SOCKADDR*)&addr,toLen);
char recvBuf[100];
int recvLen;
SOCKADDR_IN addr_in;
int fromLen;
recvLen = 100;
fromLen = sizeof(SOCKADDR);
recvfrom(client,recvBuf,recvLen,0,(SOCKADDR*)&addr_in,&fromLen);
printf("Receive:%s",recvBuf);
closesocket(client);
WSACleanup();
}
分享到:
相关推荐
孙鑫VC视频教程笔记
经典资料:孙鑫vc++视频讲义配套的源代码20集全第1-10。
Vc程序设计视频,孙鑫老师的VC视频,使你精通VC程序设计,让你能够自己亲手编写window窗口
孙鑫c++视频总结,入门学习,包括算法,数据结构,编译原理
孙鑫VC++视频讲座配套幻灯+全套示例源代码
VC6.0 MSDN帮助文档 CHM版 最新
孙鑫视频教程 vc视频教程 之 MFC AppWizard的原理与MFC程序框架的剖析.zip
《java编程基础》视频教程 吉林大学 - - 2013-04-05 《[Ajax开发初步]》JAVA私塾 AVI - - 2013-03-30 博彦科技编程高手之-JAVA编程高手 - - 2013-04-20 孙鑫JAVA教程全集 - - 2013-03-23 张孝祥JAVA视频...
很好的VC++入门教程,是新手的必选,同时也是函数使用参数手册 1
C++面向对象程序设计视频教程》上海交通大学 - - 2013-04-03 C语言程序设计视频教程(曾怡) - - 2013-03-16 C语言程序设计视频教程.徐红波 - - 2013-03-16 C语言视频教程》黑鹰基地 - - 2013-04-21 C语言速成...
最近正在学习C++,费了很多心思,分亨一下我的学习资源,孙鑫C++教程(全20讲)PPT讲义源码及电子书资源包括三部分 1.孙鑫C++教程PPT 2.孙鑫C++教程源码 3.孙鑫C++教程电子书 VC++深入详解的全部课程目录 第一课:...
java技术从入门到精通(孙鑫)学习笔记-Lesson2
Java开发详解视频教程(孙鑫)9a
孙鑫java视频教程课件.doc
java技术从入门到精通(孙鑫)学习笔记-Lesson2(面向对象上)
Windows程序运行原理及程序编写流程,窗口产生过程,句柄原理,消息队列,回调函数,窗口关闭与应用程序退出的工作关系,使用VC++的若干小技巧,stdcall与cdecl调用规范的比较,初学者常犯错误及注意事项。
孙鑫老师VC++6.0视频教程对应源代码 第一课源代码
java技术从入门到精通(孙鑫)学习笔记Lesson10(网络编程)
孙鑫视频源码,初学者的指路灯,里面含有二十个章节的所有代码,从C++的最初到最后的钩子原理,为我们更深刻的了解C++起了很好的作用
孙鑫 VC++ 深入详解书中源码