CSDN论坛 > Linux/Unix社区 > 应用程序开发区

请问:“volatile”是c语言的关键字么?有什么用处? [问题点数:50分,结帖人ghyd]

Bbs2
本版专家分:162
结帖率 100%
CSDN今日推荐
Bbs1
本版专家分:45
Bbs1
本版专家分:0
Bbs3
本版专家分:587
Bbs7
本版专家分:18977
Blank
红花 2003年7月 Linux/Unix社区大版内专家分月排行榜第一
Blank
黄花 2003年6月 Linux/Unix社区大版内专家分月排行榜第二
Blank
蓝花 2004年7月 Linux/Unix社区大版内专家分月排行榜第三
2003年12月 Linux/Unix社区大版内专家分月排行榜第三
2003年9月 Linux/Unix社区大版内专家分月排行榜第三
Bbs2
本版专家分:162
匿名用户不能发表回复!
其他相关推荐
关键字volatile有什么含意 并给出三个不同的例子
关键字volatile有什么含意 并给出三个不同的例子
正确使用Volatile关键字
Java 语言中的 volatile 变量可以被看作是一种 “程度较轻的 synchronized”;与 synchronized 块相比,volatile 变量所需的编码较少,并且运行时开销也较少,但是它所能实现的功能也仅是synchronized 的一部分。本文介绍了几种有效使用 volatile 变量的模式,并强调了几种不适合使用 volatile 变量的情形。 锁提供了两种主
const与volatile关键字的用法
const最主要的特点就是只读,有常量、常量指针,如果不是特别小心的分析C语言语句的书写格式,再加上指针的使用,就特别容易弄错。 volatile关键字是一个类型修饰符,用它声明的类型变量表示可以被某些编译器未知的因素更改,比如:操作系统、硬件或者其它线程等。遇到这个关键字声明的变量,编译器对访问该变量的代码就不再进行优化,从而可以提供对特殊地址的稳定访问;如果不使用valatile,则编译
C语言中关键字const、static、volatile的用法分析
1. const 作为一个程序员,我们看到关键字const时,首先想到的应该是:只读。因为,它要求其所修饰的对象为常量,不可对其修改和二次赋值操作(不能作为左值出现)。看几个例子: const int a; int const a;//同上面的代码行是等价的,都表示一个常整形数。 int *const a;//const具有"左结合"性,即const修饰...
C语言 volatile 修饰 变量作用 总结
volatile 影响编译器编译的结果,指出,volatile 变量是随时可能发生变化的,与volatile变量有关的运算,不要进行编译优化,以免出错,(VC++ 在产生release版可执行码时会进行编译优化,加volatile关键字的变量有关的运算,将不进行编译优化。)。  例如:  volatile int i=10;  int j = i;  ...  int k = i; 
面试点:解读关键字volatile(C语言面试题分析之一)
面试点:解读关键字volatile C语言面试题分析之一 一.volatile是什么? volatile关键字是一种类型修饰符,用它声明的类型变量表示可以被某些编译器未知的因素更改,比如:操作系统、硬件或者其它线程等。遇到这个关键字声明的变量,编译器对访问该变量的代码就不再进行优化,从而可以提供对特殊地址的稳定访问。 二.编译器优化是什么意思? int i = 5; int a = i; …… int b = i; 编译器发现两次从i读数据的代码之间,并没有对i进行过操作,它会自动把上次读
c语言之volatile和register关键字
//register.cpp #include #include #include int main1() { for(register int i=0;i<10;i++) { //由于register变量使用的是硬件CPU中的寄存器,寄存器变量无地址,所以不能使用取地址运算符"&"求寄存器变量的地址。 printf("%d\n",&i);
对嵌入式C语言中volatile的理解
一.前言 1.编译器优化介绍: 由于内存访问速度远不及CPU处理速度,为提高机器整体性能,在硬件上引入硬件高速缓存Cache,加速对内存的访问。另外在现代CPU中指令的执行并不一定严格按照顺序执行,没有相关性的指令可以乱序执行,以充分利用CPU的指令流水线,提高执行速度。以上是硬件级别的优化。再看软件一级的优化:一种是在编写代码时由程序员优化,另一种是由编译器进行优化。编译器优化常用的方法有:
C语言中volatile的用法及意义
volatile 影响编译器编译的结果,volatile指出 变量是随时可能发生变化的,与volatile变量有关的运算,不要进行编译优化,以免出错,(VC++ 在产生release版可执行码时会进行编译优化,加volatile关键字的变量有关的运算,将不进行编译优化。) 例如:volatile int i=10; int j = i; ... int k = i;volatile 告
C/C++(&Java) Volatile关键词深度剖析
背景 前几天,发了一条如下的微博 (关于C/C++ Volatile关键词的使用建议):   此微博,引发了朋友们的大量讨论:赞同者有之;批评者有之;当然,更多的朋友,是希望我能更详细的解读C/C++ Volatile关键词,来佐证我的微博观点。而这,正是我写这篇博文的初衷:本文,将详细分析C/C++ Volatile关键词的功能 (有多种功能)、Volati
关闭