请你给个qt代码实例实现多个客户端与服务端通信
时间: 2023-06-05 16:05:36 浏览: 271
QT的TCP一个服务端连接多个客户端
以下是一个简单的 QT 代码实例实现多个客户端与服务端通信:
服务端代码:
```
#include <QTcpServer>
#include <QTcpSocket>
int main()
{
QTcpServer server;
server.listen(QHostAddress::Any, 8888); // 监听本地 8888 端口
QObject::connect(&server, &QTcpServer::newConnection, [&](){
while (server.hasPendingConnections()) {
QTcpSocket* client_socket = server.nextPendingConnection();
QObject::connect(client_socket, &QTcpSocket::readyRead, [client_socket](){
QByteArray recv_data = client_socket->readAll();
// 处理接收到的数据
qDebug() << QString(recv_data);
});
}
});
return 0;
}
```
客户端代码:
```
#include <QTcpSocket>
int main()
{
QTcpSocket socket;
socket.connectToHost("127.0.0.1", 8888); // 连接本地 8888 端口
if (!socket.waitForConnected()) {
qDebug() << "连接失败!";
return -1;
}
// 发送消息给服务端
socket.write("Hello, server!");
socket.flush();
return 0;
}
```
以上代码是一个非常简单的多客户端与服务端通信的实现,仅供参考。实际上,在实际项目中,会存在更多的需求,例如服务端需要支持处理多个客户端请求、客户端需要处理连接超时等情况,需要根据实际项目需求进行具体实现。
阅读全文