UDP连接方式详解
答案:2 悬赏:50 手机版
解决时间 2021-01-17 19:46
- 提问者网友:喧嚣尘世
- 2021-01-17 14:41
UDP连接方式详解
最佳答案
- 五星知识达人网友:独行浪子会拥风
- 2021-01-17 14:48
服务器端(接收端)程序:
1、创建套接字(socket)。
2、将套接字绑定到一个本地地址和端口上(bind)。
3、等待接收数据(recvfrom)。
4、关闭套接字。
客户端(发送端)程序:
1、创建套接字(socket)。
2、向服务器发送数据(sendto)。
3、关闭套接字。
client.c#include#include void main(){ WORD wVersionRequested; WSADATA wsaData; int err; wVersionRequested = MAKEWORd( 1, 1 ); err = WSAStartup( wVersionRequested, &wsaData ); if ( err != 0 ) { return; } if ( LOBYTE( wsaData.wVersion ) != 1 || HIBYTE( wsaData.wVersion ) != 1 ) { WSACleanup( ); return; } SOCKET sockClient=socket(AF_INET,SOCK_DGRAM,0); SOCKADDR_IN addrSrv; addrSrv.sin_addr.S_un.S_addr=inet_addr("222.26.28.227"); addrSrv.sin_family=AF_INET; addrSrv.sin_port=htons(5001); sendto(sockClient,"Hello",strlen("Hello")+1,0, (SOCKADDR*)&addrSrv,sizeof(SOCKADDR));// printf("%d\n", sendto(sockClient,"Hello",strlen("Hello")+1,0,// (SOCKADDR*)&addrSrv,sizeof(SOCKADDR))); closesocket(sockClient); WSACleanup();}server.c#include #include void main(){ WORD wVersionRequested; WSADATA wsaData; int err; wVersionRequested = MAKEWORd( 1, 1 ); err = WSAStartup( wVersionRequested, &wsaData ); if ( err != 0 ) { return; } if ( LOBYTE( wsaData.wVersion ) != 1 || HIBYTE( wsaData.wVersion ) != 1 ) { WSACleanup( ); return; } SOCKET sockSrv=socket(AF_INET,SOCK_DGRAM,0); SOCKADDR_IN addrSrv; addrSrv.sin_addr.S_un.S_addr=htonl(INADDR_ANY); addrSrv.sin_family=AF_INET; addrSrv.sin_port=htons(5001); bind(sockSrv,(SOCKADDR*)&addrSrv,sizeof(SOCKADDR)); SOCKADDR_IN addrClient; int len = sizeof(SOCKADDR);// int len=sizeof(addrClient); char recvBuf[100] = "\0"; printf("Wating for message from others: \n"); int a = recvfrom(sockSrv,recvBuf,100,0, (SOCKADDR*)&addrClient,&len); if(a == SOCKET_ERROR) { printf("Error\n"); printf("%s\n", WSAGetLastError()); } printf("%s\n",recvBuf); closesocket(sockSrv); WSACleanup();}
1、创建套接字(socket)。
2、将套接字绑定到一个本地地址和端口上(bind)。
3、等待接收数据(recvfrom)。
4、关闭套接字。
客户端(发送端)程序:
1、创建套接字(socket)。
2、向服务器发送数据(sendto)。
3、关闭套接字。
client.c#include
全部回答
- 1楼网友:荒野風
- 2021-01-17 15:14
它是面向非连接的协议,它不与对方建立连接,而是直接就把数据包发送过去。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯