使用 ZMQ.h 传递字符串:简单服务器和客户端示例
以下是一个使用 zmq.h 传递字符串的简单示例,其中包括一个服务器和一个客户端。
服务器:
#include <zmq.h>
#include <stdio.h>
#include <string.h>
int main () {
void *context = zmq_ctx_new();
void *responder = zmq_socket(context, ZMQ_REP);
zmq_bind(responder, "tcp://*:5555");
while (1) {
char buffer[256];
zmq_recv(responder, buffer, 256, 0);
printf("Received request: %s\n", buffer);
char reply[256];
sprintf(reply, "Hello, %s", buffer);
zmq_send(responder, reply, strlen(reply), 0);
}
return 0;
}
客户端:
#include <zmq.h>
#include <stdio.h>
#include <string.h>
int main () {
void *context = zmq_ctx_new();
void *requester = zmq_socket(context, ZMQ_REQ);
zmq_connect(requester, "tcp://localhost:5555");
char buffer[256];
printf("Enter your name: ");
fgets(buffer, 256, stdin);
zmq_send(requester, buffer, strlen(buffer), 0);
char reply[256];
zmq_recv(requester, reply, 256, 0);
printf("Received reply: %s\n", reply);
zmq_close(requester);
zmq_ctx_destroy(context);
return 0;
}
在这个示例中,客户端发送一个字符串给服务器,服务器接收到字符串并在其后添加一个问候语,然后将结果发送回客户端。在这个例子中,我们使用了 TCP 协议,服务器绑定在本地 5555 端口,客户端连接到服务器的地址和端口。
原文地址: https://www.cveoy.top/t/topic/oWTh 著作权归作者所有。请勿转载和采集!