关键字volatile

来源:互联网 发布:品茗软件破解版闪退 编辑:程序博客网 时间:2024/04/29 23:20

C语言关键字volatile表示某个变量的值可能在外部被改变,因此对这些变量的存取不能缓存到寄存器,每次使用时需要重新从变量地址获取。如果没有volatile关键字,则编译器可能优化读取和存储,可能暂时使用寄存器中的值,如果这个变量由别的程序更新了,将会出现不一致的错误。
用途:
1、中断服务程序中修改的供其他程序监测的变量需要加volatile;
2、多任务环境下各任务间共享的标志应该加volatile;
3、存储器映射的硬件寄存器通常也要加volatile说明,因为每次对它的读写都可能有不同的意义。

0 0
原创粉丝点击