Qt简单实现UDP通信
生活随笔
收集整理的這篇文章主要介紹了
Qt简单实现UDP通信
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
Qt簡單實現(xiàn)UDP通信
標簽(空格分隔): udp通信、Qt
一、UDP簡介
-
1)UDP(User Datagram Protocol,用戶數(shù)據(jù)報協(xié)議)
UDP是一個輕量級、不可靠、面向數(shù)據(jù)報的、無連接的傳輸層協(xié)議,多用于可靠性要求不嚴格,不是非常重要的傳輸,如直播、視頻會議等等。 -
2)Qt中QUdpSocket類繼承自QAbstractSocket,用來發(fā)送和接收UDP數(shù)據(jù)報,”Socket”即套接字,套接字即IP地址+端口號。其中IP地址指定了網(wǎng)絡中的一臺主機,二端口號則指定了該主機上的一個應用程序,端口號只具有本地意義,使用套接字即可實現(xiàn)網(wǎng)絡上的兩個應用程序之間的通信。
-
3)QUdpSocket支持IPv4廣播,要廣播數(shù)據(jù)報,則只需發(fā)送到一個特殊的地址QHostAddress::Broadcast(即255.255.255.255),數(shù)據(jù)報一般建議發(fā)送字節(jié)數(shù)小于512字節(jié)。端口號選擇1024-65535(1024以下的常用作保留端口號,如FTP常用端口號21,Telnet常用端口號23,DNS域名服務器常用端口53等)。
二、具體Demo
發(fā)送端:
- 新建Qt Widgets Application,用作udp發(fā)送端,繼承自Qwidget類即可,設計ui界面,用于發(fā)送信息,界面如下:
- 打開pro文件,做如下修改,支持網(wǎng)絡編程,接收端也需做如下修改
- 添加發(fā)送端udpSocket以及按鈕的點擊信號
- 點擊信號對應槽函數(shù)的實現(xiàn):
接受端:
- 再新建Qt Widgets Application項目,用作udp接收端,繼承自Qwidget類即可,設計ui界面,用標簽部件來顯示接收到的信息,界面如下:
- 跟發(fā)送端一樣,在pro文件中添加支持網(wǎng)絡編程的模塊 network
- 添加接收端udpSocket,如下:
- 編輯接收端源文件:
三、運行效果
- 運行發(fā)送端應用程序,再打開接收端應用程序;
- 在發(fā)送端編輯框輸入數(shù)據(jù),點擊廣播,觀察接收端的情況,結果如下:
總結
以上是生活随笔為你收集整理的Qt简单实现UDP通信的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 修复windows系统快捷方式图标变成白
- 下一篇: Qt视频直播软件--项目实战(Day2)