您好,登錄后才能下訂單哦!
#include <stdlib.h> #include <stdio.h> #include <string.h> #include <unistd.h> #include <sys/types.h> #include <sys/ipc.h> #include <sys/msg.h> #include <error.h> //信息結構體 struct my_msg { long int my_msg_type; //數據類型 char text[BUFSIZ]; //消息緩沖區的大小 } msgbuf; int main(int argc,char *argv[]) { int runningFlg =1; //運行標志 int msgid; //消息標識符 msgid = msgget((key_t)1234,0666 |IPC_CREAT); //創建一個消息隊列,使用1234作為鍵值 if(msgid==-1) { perror("創建消息隊列失敗!\n"); //如果創建失敗 exit(1); } while(runningFlg == 1) //如果程序處于運行中 { printf("輸入希望發送的字符串: "); fgets(msgbuf.text,BUFSIZ,stdin); //從標準輸入讀取BUFSIZ指定的數據 msgbuf.my_msg_type = 1; //指定數據類型 if(msgsnd(msgid,(void *)&msgbuf, BUFSIZ, 0)==-1) //發送數據 { perror("發送消息失敗!\n"); //如果發送失敗 exit(1); } if(strncmp(msgbuf.text,"end",3)==0) //如果用戶輸入end { runningFlg = 0; //結束運行 } } return 0; }
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。