本篇利用消息队列的特性实现简单的聊天程序,msgsnd发送数据,msgrcv接收数据来实现聊天功能,消息队列详情。
数据接收端msgrcv
//这是一个以system V消息队列实现的聊天程序客户端
//// 1.创建消息队列
//// 2.从消息队列中获取一个数据,打印出来
//// 3.从标准输入中获取一个数据,组织成消息队列节点发送
//// 4.删除消息队列
//// 接口:
//// 创建 msgget
//// 接收数据 msgrcv
//// 发送数据 msgsnd
//// 控制 msgctl
//// int msgget(key_t key,int msgflg);
//// msgflg:
//// key:内核中消息队列的标识
//// IPC_CREAT 不存在则创建,存在则打开
//// IPC_EXCL 与IPC_CREAT 同用,若存在则报错 防止程序重复启动
//// mod 权限
//// 返回值:一个代码操作的句柄:失败:-1
//// ssize_t msgrcv(int msqid, void *msgp, size_t msgsz, long msgtyp,
//// int msgflg);
//// msgid:msgget返回的操作句柄
//// smgp:用于接收数据
//// msgsz:指定接收的数据大小
//// msgtyp:指定接收的数据类型
//// msgflg:标准选项,0
#include<stdio.h>
#include<unistd.h>
#include<stdlib.h>
#include&l