我创建消息队列为什么出现:msgget error!:Permission denied

leiajay 2010-12-14 10:26:33
我创建消息队列为什么出现:msgget error!:Permission denied。

#include <unistd.h>
#include <stdlib.h>
#include <errno.h>
#include <sys/ipc.h>
#include <sys/msg.h>
#include <sys/types.h>

#define MQ_KEY1 1234L
#define MSG_MODE 0666

int main()
{
int msqid;
if((msqid=msgget(MQ_KEY1,MSG_MODE|IPC_CREAT))==-1)
{
printf("msgget error!:%s\n",strerror(errno));
exit (1);
}
else
{
printf("msqid=%d\n",msqid);
}
}
...全文
1264 7 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
mymtom 2010-12-16
  • 打赏
  • 举报
回复
用ipcs -q看看是不是key值被其他用户占用了。
NowDoIT 2010-12-16
  • 打赏
  • 举报
回复
提示是没有权限的意思吧!
hl0702xin 2010-12-15
  • 打赏
  • 举报
回复
拿root权限运行···
leiajay 2010-12-15
  • 打赏
  • 举报
回复
哎,原来俺的程序没有问题。
leiajay 2010-12-15
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 q191201771 的回复:]
msgget参数换成IPC_CREAT | IPC_EXCL | 0x0666试试
[/Quote]

权限位为8进制数
就想叫yoko 2010-12-15
  • 打赏
  • 举报
回复
msgget参数换成IPC_CREAT | IPC_EXCL | 0x0666试试
leiajay 2010-12-15
  • 打赏
  • 举报
回复
谁告诉我,为什么啊

70,030

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧