標籤:struct 技術 .com ipcs har pcs color png sgid
msgsnd.c檔案
1 #include<sys/types.h> 2 #include<sys/ipc.h> 3 #include<sys/msg.h> 4 #include<stdio.h> 5 6 struct msgbuf 7 { 8 long type;//類型 9 char buf[1024];10 };11 12 int main()13 {14 int msgid;15 msgid=msgget(0x1000,IPC_CREAT | 0777);16 struct msgbuf mb={1,"hello world"};17 int ret;18 ret=msgsnd(msgid,&mb,sizeof(struct msgbuf)-sizeof(long),0);19 //這裡的長度不包括類型的大小20 }
msgrcv.c檔案
1 #include<sys/types.h> 2 #include<sys/ipc.h> 3 #include<sys/msg.h> 4 #include<stdio.h> 5 struct msgbuf 6 { 7 long type; 8 char buf[1024]; 9 };10 int main()11 {12 int msgid;13 msgid=msgget(0x1000,IPC_CREAT | 0777);14 struct msgbuf mb;15 msgrcv(msgid,&mb,sizeof(struct msgbuf)-sizeof(long),1,0);16 puts(mb.buf);17 }
gcc msgsnd.c -o msgsnd gcc msgrcv.c -o msgrcv
ipcs查看訊息佇列
./msgsnd 然後 ipcs
已經傳入,然後./msgrcv
ipcs查看一下
取出資料
C語言訊息佇列