毕业论文开发语言企业开发JAVA技术.NET技术WEB开发Linux/Unix数据库技术Windows平台移动平台嵌入式论文范文英语论文
您现在的位置: 毕业论文 >> linux >> 正文

32位程序移植到64位报错

更新时间:2012-5-22:  来源:毕业论文

需要把32位程序移植到64位,可是运行时就出现了错误。

以下是出现错误的语句:
  mqid = msgget(0x10000007, 0666);

这个16进制数值怎么改才可以啊???
与32还是64无关,ipcs -q看看有没有这个message q。

int msgget(key_t key, int msgflg); 第二个参数你就给一个mode算什么,没有IPC_CREAT第二个参数就忽略了。

这是64位上的,程序没有运行起来:
------ Message Queues --------
key msqid owner perms used-bytes messages  
这是32位的,程序在运行:
------ Message Queues --------
key msqid owner perms used-bytes messages  
0x10000007 0 root 777 0 0  

但是我在32位上边可以编译通过,运行也没有问题。

mqid = msgget(0x10000007, IPC_CREAT | 0666);  这样就可以了

设为首页 | 联系站长 | 友情链接 | 网站地图 |

copyright©youerw.com 优尔论文网 严禁转载
如果本毕业论文网损害了您的利益或者侵犯了您的权利,请及时联系,我们一定会及时改正。