C语言中volatile关键字
如:
#define GPIO1_DR *( (volatile unsigned int *)0x0209C000) //数据寄存器 每一位代表一个GPIO的0或1
一句话:使用volatile修饰后,会强制你每次引用GPIO寄存器对应的变量时都会去它的寄存器里面读,强制访问内存中的值,而不是缓存中的,防止编译器优化,volatile关键词影响编译器编译的结果,用volatile声明的变量表示该变量随时可能发生变化,与该变量有关的运算,不要进行编译优化。
具体例子参考:volatile解析