您的位置:首页 > 其它

关键字的作用——const和volatile

2016-11-25 21:58 323 查看
const的作用:

修饰的变量,(const离谁近谁不能自增)。

即是不能用该变量名修改这个变量所表示的内存空间的值。(把一个变量变成一个只读变量)。

例:const int num = 5;

num++;  这个语句不对,无法实现num+1=6。

int *p;

p=#

(*p)++;   这样可以改变num的值。最终num=6;

修饰函数:
例:const char *func(const char *str)const;
第一个const修饰的是返回值,则说明const修饰的char,也就是返回值的内容不能被修改。
第二个const修饰的是参数,表示这个参数在函数体中是不能被修改的。
第三个const修饰的是整个函数。这种情况一般出现在类成员函数里,并不是这个函数是不变的,而是这个函数不能改变类的成员变量。不论是public的还是private的。

volatile的作用:

volatile修饰的变量,会强烈要求编译器每次对该变量进行访问时都要重新去内存里读取,而且读取的数据立即被保存。

volatile一般使用的地方:

(1):中断服务程序中修改的供其他程序检测的变量需要加volatile;
(2):多任务环境下各任务间共享的标志应该加volatile;
(3):存储器映射的硬件寄存器通常也要加volatile;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: