使用Qt实现UDP通讯

一、介绍

UDP是一个无连接协议,传输数据之前源端和终端不建立连接,当它想传送时就简单地去抓取来自应用程序的数据,并尽可能快地把它扔到网络上。由于传输数据不建立连接,因此也就不需要维护连接状态,包括收发状态等,因此一台服务机可同时向多个客户机传输相同的消息。这样就极大地减少了系统开销,降低了流媒体的误码率和丢包率,并保证了流媒体播放的平滑性。

1、使用时需要在项目的pro中增加 QT+=network
2、使用到UDP通讯类QUdpSocket
3、服务器端需要绑定固定端口
4、客户端向服务器绑定的端口发送数据
5、服务器根据客户端连接过的IP和端口向客户端发送数据
6、使用QVariant在comboBox中保存客户端IP和端口

二、服务器代码

#include "MainWindow.h"
#include "ui_MainWindow.h"

MainWindow::MainWindow(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::MainWindow)
{
    ui->setupUi(this);
    setWindowTitle("服务器8888");
    connect(ui->pbSend,SIGNAL(clicked()),this,SLOT(onBtnSendClick()));
    //创建socket
    m_pUdpSocket = new QUdpSocket(this);
    //绑定服务器端的端口,只需要绑定服务器端的IP和端口,客户端就可以和服务器通讯,服务器可以根据接收到的客户端消息,向对应的客户端发送消息
    m_pUdpSocket->bind(8888);
    //收数据
    conne
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值