求助一下C语言中的volatile作用

2019-07-21 08:25发布

我发现stm32f10x.h文件里进行了宏定义#define     __O     volatile                  /*!< defines 'write only' permissions     */#define     __IO    volatile                  /*!< defines 'read / write' permissions   */
但是通过网上查询对volatile没有太明白,想请问一下各位有没有什么简单的理解方式,我不要求太深入、太专业,只要能让我这个新人简单明白大概的作用即可,能举出例子更好。
非常感谢各位的教导!


友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
23条回答
Raines
1楼-- · 2019-07-23 16:48
warship 发表于 2018-8-9 22:55
简单地说,volatile就是告诉编译器,不要自作聪明地去优化与这个变量有关的代码
严格做到:每一次的读写都 ...

非常感谢
电脑小白
2楼-- · 2019-07-23 19:37
 精彩回答 2  元偷偷看……
锤子
3楼-- · 2019-07-24 00:10
warship 发表于 2018-8-9 22:55
简单地说,volatile就是告诉编译器,不要自作聪明地去优化与这个变量有关的代码
严格做到:每一次的读写都 ...

感谢我大哥!
hijkstra
4楼-- · 2019-07-24 05:23
麻烦一下大家,
我注意到有的处理器包含cache,volatile这样还有效吗?如何保证数据多个备份的一致性呢?
asdf89
5楼-- · 2019-07-24 06:34
谢谢各位指导,谢谢了

一周热门 更多>