1 // 从套接字中获取ZMQ字符串,并转换为C语言字符串 2 static char * 3 s_recv (void *socket) { 4 zmq_msg_t message; 5 zmq_msg_init (&message); 6 zmq_recv (socket, &message, 0); 7 int size = zmq_msg_size (&message); 8 char *string = malloc (size + 1); 9 memcpy (string, zmq_msg_data (&message), size); 10 zmq_msg_close (&message); 11 string [size] = 0; 12 return (string); 13 } 14 15 // 将C语言字符串转换为ZMQ字符串,并发送给套接字 16 static int 17 s_send (void *socket, char *string) { 18 int rc; 19 zmq_msg_t message; 20 zmq_msg_init_size (&message, strlen (string)); 21 memcpy (zmq_msg_data (&message), string, strlen (string)); 22 rc = zmq_send (socket, &message, 0); 23 assert (!rc); 24 zmq_msg_close (&message); 25 return (rc); 26 }
转载于:https://www.cnblogs.com/hust2012/archive/2012/10/07/2714282.html