udp與tcp不同,是一種無連線的通訊方式,相比tcp而言更加靈活。
利用socket實現udp的方式相比tcp而言也更加簡單。
傳送方:
1.初始化套接字
2.建立socket
3.利用sendto傳送資料(tcp是send)
4.關閉socket
接收方:
1.初始化套接字
2.建立socket並與本機進行繫結
3.利用recvfrom接收資料
4.關閉socket
有以下兩個函式是udp通訊獨有的
1.int sendto(socket 傳送的套接字,char* 傳送的字串,int 緩衝區長度,int 函式呼叫方式一般為0,sockaddr* 目標位址結構體指標,int 位址長度)
sendto是udp專門的資料傳送方式,send()用於tcp sock_stream,sendto()用於udp sock_dgram,返回傳送位元組的數目,失敗返回socket_error
2.int recvfrom(socket 接收的socket,char* 接收的字串,int 緩衝區長度,int 函式呼叫方式一般為0,sockaddr* 源位址結構體指標,int 位址長度)
udp傳送方程式:
#include "stdafx.h"
#include #include #include #include #pragma comment(lib,"ws2_32.lib")
int main()
printf("send succeeded\n\n");
} closesocket(s);
wsacleanup();
return 0;
}
接收方程式:
#include "stdafx.h"
#include #include #pragma comment(lib,"ws2_32.lib")
int main()
closesocket(s);
wsacleanup();
return 0;
}
執行結果如下:
C 通過socket實現UDP 通訊
接下來我們通過乙個簡單的程式看一下udp通訊的過程。服務端程式 using system using system.collections.generic using system.linq using system.text using system.threading.tasks using s...
C 通過socket實現UDP 通訊
接下來我們通過乙個簡單的程式看一下udp通訊的過程。服務端程式 using system using system.collections.generic using system.linq using system.text using system.threading.tasks using s...
socket實現UDP網路通訊程式
首先回顧socket套接字程式設計 socket就是一套網路程式設計介面 上層使用者通過這些介面簡單地完成網路通訊傳輸不需要關心內部實現 類似中介軟體 五元組 源ip位址,源埠,目的ip位址,目的埠,協議 用於標識資料,每個網路中資料都會包含 套接字程式設計 使用socket介面實現通訊 網路通訊 ...