c++ - 如何使用zeromq(zmq)在服务器和客户端之间发送整数值?

标签 c++ zeromq

我有一个带有 zmq ( ZeroMQ ) lib 的 C++ 服务器和客户端代码。我想将整数值发送给客户端。

我已经通读了 zmq 的手册,但是我在从服务器向客户端发送字符数组以外的任何内容时遇到问题。

谁能帮我写代码? 提前致谢。

最佳答案

您只需要一种消息格式。

大小有效将是一个结构:

发送端

struct Message
{
  uint32_t one;
  uint64_t two;
};

Message msg;
msg.one = 1;
msg.two = 20;
send(&msg, sizeof(Message));

或者如果你想要更灵活的东西,你可以发送 json 等

接收方:

假设您使用 cppzmq header

Message* msg;
zmq::message_t zmsg;
sock->recv(&zmsg);
msg = (Message*)zmsg.data();
int one - msg->one;

关于c++ - 如何使用zeromq(zmq)在服务器和客户端之间发送整数值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48383753/

相关文章:

Golang zmq 绑定(bind),ZMQ4,返回包错误找不到文件 zmq.h

c++ - 类型名称后的括号是否与 new 有所不同?

php - 强制类型 SWIG

c++ - 如何使用 C 预处理器用环境变量进行替换

c++ - 使用 std::bind 了解编译器错误

zeromq - 了解高级ZeroMQ套接字类型

c++ - Qt ui 文件不编译成 C++ 头文件

distributed-computing - AMQP 和 ZeroMQ 的区别

c++ - 如何设置 [ ZeroMQ ] 以便在 Visual Studio 2015 Enterprise 中使用?

c - 在 C 中通过 Zeromq 重定向标准输出