volatile 怎样修饰代码

 我来答
zzu_liuwei
2012-02-23 · TA获得超过372个赞
知道小有建树答主
回答量:200
采纳率:0%
帮助的人:222万
展开全部
volatile是C语言32个关键字之一,意思是变量在程序执行过程中有可能被隐含地改变,尤其是操作某些端口或寄存器时
编译器会将某些变量优化,例如某个变量没有被作为左值,那么就不会重新读取该变量的值,使用原来读取的值,但很有可能这个值已经被改变
所以可以将该变量用volatile修饰,告诉编译器这个变量是有可能改变的,这样编译器每次都会从原始地址读值,保证值的正确性
使用很简单:volatiel int i;
名师面授精华
2012-02-23 · TA获得超过421个赞
知道小有建树答主
回答量:236
采纳率:83%
帮助的人:80.2万
展开全部
volatile关键字是一种类型修饰符,用它声明的类型变量表示可以被某些编译器未知的因素更改,比如:操作系统、硬件或者其它线程等。遇到这个关键字声明的变量,编译器对访问该变量的代码就不再进行优化,从而可以提供对特殊地址的稳定访问。   使用该关键字的例子如下:   int volatile nVint;
当要求使用volatile 声明的变量的值的时候,系统总是重新从它所在的内存读取数据,即使它前面的指令刚刚从该处读取过数据。而且读取的数据立刻被保存。

参考资料: 百度百科http://baike.baidu.com/view/608706.htm

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式