mqreceive.c

来自「UNIX网络编程 第2卷 进程间通信 代码」· C语言 代码 · 共 35 行

C
35
字号
#include	"unpipc.h"#include	"mqueue.h"intmain(int argc, char **argv){	int		c, flags;	mqd_t	mqd;	size_t	n;	uint_t	prio;	void	*buff;	struct mymq_attr	attr;	flags = O_RDONLY;	while ( (c = Getopt(argc, argv, "n")) != -1) {		switch (c) {		case 'n':			flags |= O_NONBLOCK;			break;		}	}	if (optind != argc - 1)		err_quit("usage: mqreceive [ -n ] <name>");	mqd = Mymq_open(argv[optind], flags);	Mymq_getattr(mqd, &attr);	buff = Malloc(attr.mq_msgsize);	n = Mymq_receive(mqd, buff, attr.mq_msgsize, &prio);	printf("read %d bytes, priority = %u\n", n, prio);	exit(0);}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?