楼主: 
archiee (1B2C器材班超人)   
2016-12-24 09:24:06※ 引述《caxz ( )》之铭言:
: 今天被问到的一个问题
: 假设在main 中有如此宣告
: main()
: {
:  volatile int i ;
:  int j;
:  i=1;
:  i=2;
:  j=1;
:  j=2;
: }
: 请问两整数变量i j 有何不同
: 这要如何解释呢??
: 感谢赐教
volatile 挥发, 可变性
顾名思义 宣告 volatile int i,  表示i 可能会遭遇到非程式以外的变化
multithreads 共用shared memory..
比如硬件中断 常见如 I/O  /bus 而使i 需要"被立即更新"..
至于应用 我目前常用的就是 强制从 MMIO 读某些IO 状态
或者 multi-threads 常用的shared memory..
这块内存会因为compiler optimize 而fail