代码如下:
#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);
}