代码如下:
#define KEY 412 #define TYPE 66 #define BUFFER_SIZE 1024 //第一个字段必须是type typedef struct { long type; //必须是long char data[BUFFER_SIZE]; } Message; void send_message() { int msg_q_id = msgget((key_t)KEY, O_WRONLY | 0777); if (msg_q_id < 0) { return; } Message msg = {0}; msg.type = TYPE; strcpy(msg.data, "csdn"); //扣除type msgsnd(msg_q_id, &msg, BUFFER_SIZE, 0); } void receive_message() { int msg_q_id = msgget((key_t)KEY, IPC_CREATE | O_RDONLY | 0777); if (msg_q_id < 0) { return; } Message msg = {0}; msg.type = TYPE; //扣除type msgsrcv(msg_q_id, &msg, BUFFER_SIZE, TYPE, 0); }