注意的关键字都有哪些

2019-07-31 17:23发布

嵌入式C语言需要
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
17条回答
jiahy
1楼-- · 2019-08-02 13:38
以上这几种情况经常还要同时考虑数据的完整性相互关联的几个标志读了一半被打断了
重写在1 中可以通过关中断来实
现2 中可以禁止任务调度3 中则只能依靠硬件的良好设计了
shimx
2楼-- · 2019-08-02 17:19

“volatile”告诉编辑器,此变量是容易变化的,每次使用时都须重新读取值!
jiaxw
3楼-- · 2019-08-02 18:57
volatile是针对编译器优化所作的妥协。

为了提高执行效率,编译器会尽可能把变量放到寄存器里,而不是存放在内存里。如果某全局变量有幸被放到寄存器里,则会带来如10楼所述之问题。为了避免此类问题,使用volatile关闭此优化。
jiajs
4楼-- · 2019-08-02 20:53
多谢,受益匪浅啊
jiajs
5楼-- · 2019-08-03 00:11
 精彩回答 2  元偷偷看……

一周热门 更多>