不好意思,还得麻烦你一下,问你一点C的问题.

问题描述:

不好意思,还得麻烦你一下,问你一点C的问题.
我定义了一些 int flag1=1,int flag2=0,int flag3=1,.值都是1或者0.我想定义一个变量a,能按位把这些值都取进去,就是10100.然后再把这个值转换成int型的,放到消息队列里.再接收后再转换成位的模式,然后按照位的1或者0进行接收端的相应操作,有几个问题:
1.我该如何定义这个变量a?
2.怎样把flag中的值放进去?
3.怎样把a变成int型的又怎么样把它变成bool型的?
我知道这些问题很菜,但我真是一个菜鸟,
1个回答 分类:综合 2014-12-04

问题解答:

我来补答
#define FLAG1 0x1
#define FLAG2 (0x1
再问: A发送端(用命令设置后发送消息): buf.type = SHOW; msgsnd(g_msg_id1,&buf,sizeof(struct msgbuf),0) B接收端: while ((size=msgrcv(g_msg_id1,&tmpbuf,sizeof(tmpbuf),0,0)>0)) memcpy( &buf,tmpbuf,sizeof(struct msgbuf) ); 数据处理······· B再发送: buf.type = SHOW; msgsnd(g_msg_id2,&buf,sizeof(struct msgbuf),0); A接收:msgrcv(g_msg_id2,&buf,sizeof(struct msgbuf),SHOW,0);
 
 
展开全文阅读
剩余:2000
下一页:明矾净水