msg1.c

来自「本文件介绍了unix内核的c源代码」· C语言 代码 · 共 36 行

C
36
字号
#include <comlib.h>int GetMsg1(char *pHost){	char szBuf[256], szFmt[] = "%s|MSG|0x1234|%d|%d|%d|%s\n";	struct msqid_ds buf;						/* 申请消息队列结构缓冲区 */	int msgid, unused;	float rate;	memset(&buf, 0, sizeof(buf));				/* 置空消息队列结构缓冲区 */	if ((msgid = msgget(0x1234, 0666)) == -1 || 		msgctl(msgid, IPC_STAT, &buf) == -1)		/* 读取消息队列结构 */	{		printf(szFmt, pHost, 0, 0, 1, strerror(errno));		return 0;	}	unused = buf.msg_qbytes - buf.msg_cbytes;	rate = unused / buf.msg_qbytes;	memset(szBuf, 0, sizeof(szBuf));	sprintf(szBuf, "space: %d of %d available (%.2f%%).", unused, buf.msg_qbytes, rate*100);	if (rate >= 0.9)	{		printf(szFmt, pHost, unused , buf.msg_qbytes, 2, szBuf);	}	else	{		printf(szFmt, pHost, unused , buf.msg_qbytes, 0, szBuf);	}}int main(int argc, char **argv){	GetMsg1(argv[1]);	return 0;}

⌨️ 快捷键说明

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