volatile修饰符

版权声明:共同提高:) https://blog.csdn.net/u011436427/article/details/82719088

参考学习:《C语言进阶重点、难点与疑点分析》

debug模式与release模式的区别

1)debug模式被称之为调式版本,它包含调试信息,并且不需要做任何优化;
2)release模式被称之为发布版本,它需要各种优化,使得程序在代码大小和运行速度上都是最优的

具体例子如下:

这里写图片描述
这里写图片描述

这里写图片描述

嵌入式程序员必须掌握volatile的使用

1.每次定义到这个变量的时候,都必须从内存中直接读取这个变量的值,而不是使用保存在寄存器中备份。

2.如果对变量加上volatile修饰,就是告诉编译器不要对它所修饰的变量进行任何的优化,每次都要直接从内存地址中的得到。

例子1.

这里写图片描述

这里写图片描述

再使用volatile修饰符以后,这样不管在什么模式下都是更新后的a的值。

例子2

这里写图片描述

volatile在实际应用的室用场景如下:

这里写图片描述

猜你喜欢

转载自blog.csdn.net/u011436427/article/details/82719088