qt udp 通信完整例子
时间: 2023-09-01 08:07:27 浏览: 91
以下是一个基于Qt的UDP通信完整例子:
```cpp
// main.cpp
#include <QCoreApplication>
#include <QUdpSocket>
#include <QDebug>
int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);
// 创建UDP套接字
QUdpSocket socket;
socket.bind(QHostAddress::LocalHost, 1234); // 绑定本地主机地址和端口号
// 监听套接字,等待数据
while (socket.waitForReadyRead(-1)) {
QByteArray datagram;
datagram.resize(socket.pendingDatagramSize());
QHostAddress sender;
quint16 senderPort;
socket.readDatagram(datagram.data(), datagram.size(), &sender, &senderPort);
qDebug() << "Received datagram:" << datagram << "from" << sender.toString() << ":" << senderPort;
// 发送数据
QByteArray response = "Hello, world!";
socket.writeDatagram(response, sender, senderPort);
}
return a.exec();
}
```
这个例子创建了一个UDP套接字,绑定到本地主机地址和端口号1234,并监听套接字等待数据。当有数据到达时,打印出数据和发送者的地址和端口号,并回复一个简单的消息。
阅读全文