如何在linux中使用POSIX API发送带消息队列的整数?

时间:2011-03-09 14:16:07

标签: linux ipc message-queue

我尝试通过msg队列发送整数但函数mq_send(mq,& val,sizeof(val),0);正在使用char类型指针,所以有没有办法将整数发送到另一个函数或相同函数的队列。

...问候

1 个答案:

答案 0 :(得分:4)

在这种情况下,不要将 char * 读作唯一允许的数据类型。

许多* ix API使用char作为通用缓冲区指针。

因此查看接口是指向缓冲区的指针和缓冲区的大小。

那个缓冲区可以是你喜欢的任何东西,从单个int到结构,你的类的seralized字符串表示,或者只是内存中的任何其他东西。

int i;
mq_send(mq, (char *) &i, sizeof(i), 0);

应该工作(未经测试)

祝你好运