请用zmqh写一个传递QString字符串的DEMO
以下是使用zmq.h编写的传递QString字符串的DEMO代码:
发送端:
#include <zmq.h>
#include <QString>
#include <iostream>
int main()
{
void *context = zmq_ctx_new();
void *socket = zmq_socket(context, ZMQ_PUSH);
zmq_connect(socket, "tcp://localhost:5555");
QString message = "Hello, world!";
QByteArray byteArray = message.toUtf8();
zmq_send(socket, byteArray.data(), byteArray.size(), 0);
zmq_close(socket);
zmq_ctx_destroy(context);
return 0;
}
接收端:
#include <zmq.h>
#include <QString>
#include <iostream>
int main()
{
void *context = zmq_ctx_new();
void *socket = zmq_socket(context, ZMQ_PULL);
zmq_bind(socket, "tcp://*:5555");
char buffer[1024];
zmq_recv(socket, buffer, 1024, 0);
QString message = QString::fromUtf8(buffer);
std::cout << "Received message: " << message.toStdString() << std::endl;
zmq_close(socket);
zmq_ctx_destroy(context);
return 0;
}
该DEMO中,发送端使用ZMQ_PUSH套接字连接到本地的5555端口,将QString类型的消息转换为QByteArray类型,并使用zmq_send函数发送。接收端使用ZMQ_PULL套接字绑定到本地的5555端口,并使用zmq_recv函数接收消息,并将接收到的QByteArray类型的消息转换为QString类型。最后,输出接收到的消息到控制台
原文地址: http://www.cveoy.top/t/topic/htHu 著作权归作者所有。请勿转载和采集!