UCOSII实验3里面OSMboxPost(msg_key,(void*)key);key前面没有&取地址符号?

2019-07-21 04:46发布

原子哥 你的UCOSII实验3里面有发送邮箱的
u8 key;
OSMboxPost(msg_key,(void*)key);我查看原函数 着发送的应该是地址才是 可是你这里没有取地址符号啊?

还有
u32 key;
key=(u32)OSMboxPend(msg_key,10,&err); 函数原型是返回指针,你这样赋值 实验也能跑成功。所以有疑问。
一般是这样的吧*(u32 *)OSMboxPend(msg_key,10,&err)。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
10条回答
长昵称不被占用
1楼-- · 2019-07-21 20:05
正点原子 发表于 2014-5-14 09:46
发送端,直接将key的值当成地址传送。。。
接收端,直接获取地址,就当成值。

key=(u32)OSMboxPend(msg_key,10,&err);
这个到底啥情况,说的没看明白啊
长昵称不被占用
2楼-- · 2019-07-21 20:34
正点原子 发表于 2014-5-14 09:46
发送端,直接将key的值当成地址传送。。。
接收端,直接获取地址,就当成值。

接收函数返回的是 pmsg;
可是void      *pmsg;是个指针啊,为啥打印出来是key的值呢
骨折小号
3楼-- · 2019-07-21 22:33
 精彩回答 2  元偷偷看……
骨折小号
4楼-- · 2019-07-22 04:24
合肥-文盲 发表于 2015-7-10 16:38
回复【3楼】正点原子:
---------------------------------
卧槽   竟然有人跟我一样的疑问 ...

这个简化 就是  void*)那个值不能0

一周热门 更多>