当前位置:嗨网首页>书籍在线阅读

22-总结_限定符

  
选择背景色: 黄橙 洋红 淡粉 水蓝 草绿 白色 选择字体: 宋体 黑体 微软雅黑 楷体 选择字体大小: 恢复默认

B.3.3 总结:限定符

关键字

使用下面关键字限定变量:

const、volatile、restrict

一般注释

限定符用于限制变量的使用方式。不能改变初始化以后的 const 变量。编译器不会假设 volatile 变量不被某些外部代理(如,一个硬件更新)改变。 restrict 限定的指针是访问它所指向内存的唯一方式(在特定作用域中)。

属性

const int joy = 101; 声明创建了变量 joy ,它的值被初始化为 101

volatile unsigned int incoming; 声明创建了变量 incoming ,该变量在程序中两次出现之间,其值可能会发生改变。

const int * ptr = &joy; 声明创建了指针 ptr ,该指针不能用来改变变量 joy 的值,但是它可以指向其他位置。

int * const ptr = &joy; 声明创建了指针 ptr ,不能改变该指针的值,即 ptr 只能指向 joy ,但是可以用它来改变 joy 的值。

void simple (const char * s); 声明表明形式参数 s 被传递给 simple() 的值初始化后, simple() 不能改变 s 指向的值。

void supple(int * const pi);void supple(int pi[const]); 等价。这两个声明都表明 supple() 函数不会改变形参 pi

void interleave(int restrict p1, int restrict p2, int n); 声明表明 p1p2 是访问它们所指向内存的唯一方法,这意味着这两个块不能重叠。