我正在尝试在结构的两个进程之间发送和接收消息,如下所示
struct _st{
long _var1;
int _var2;
int _var3;
int _var4;
int _var5;
vector <pair<int,int> > _var6;
};
我的发送代码是
send_val = msgsnd(msgqid, &message, sizeof(message), !IPC_NOWAIT);
我这样收到
rec_val = msgrcv(msgqid, &message, sizeof(message), 0, !IPC_NOWAIT);
当我将接收到的消息中的 _var6 分配给另一个变量并打印它的值时,我得到了垃圾。
我怎样才能正确发送和接收这个结构?