ANSI C的类型限定词
2009-06-08 17:06
225 查看
一个变量是以它的类型和存储类表征的。C90增加了两个属性:不变性和易变性。这些属性是通过关键字const和volatile声明的。
const
:不能通过赋值、增量或减量计算来修改该变量的值。然而,可以初始化一个const变量。
在函数定义的参数中使用:const int array[]和const int *array相同,表明array指向的数据是不可变的。
在文件之间共享const数据时可使用两个策略,第一个是遵循外部变量的惯用规则:在一个文件中进行定义声明,在其他文件中进行引用声明(使用关键字extern)。 第二个是将常量放在一个include文件中,这时还必须使用静态外部存储类:
/*constant.h*/
static
const double PI = 3014159;
在其它的文件中: #include "constant.h"
volatile
: 告诉编译器不能优化
restrict
:只可用于指针,并表明指针是访问一个数据对象的惟一且初始的方式。(则Dev-C++中还不能用)。
const
:不能通过赋值、增量或减量计算来修改该变量的值。然而,可以初始化一个const变量。
在函数定义的参数中使用:const int array[]和const int *array相同,表明array指向的数据是不可变的。
在文件之间共享const数据时可使用两个策略,第一个是遵循外部变量的惯用规则:在一个文件中进行定义声明,在其他文件中进行引用声明(使用关键字extern)。 第二个是将常量放在一个include文件中,这时还必须使用静态外部存储类:
/*constant.h*/
static
const double PI = 3014159;
在其它的文件中: #include "constant.h"
volatile
: 告诉编译器不能优化
restrict
:只可用于指针,并表明指针是访问一个数据对象的惟一且初始的方式。(则Dev-C++中还不能用)。
相关文章推荐
- C Primer Plus 第12章 12.7 ANSI C的类型限定词
- linux C编程(三)ANSI C中的类型限定词(const/volatile/restrict)
- ANSI C (4) —— 存储类别和类型限定
- ANSI C的三个类型限定词:const,volatile,restrict
- 类型限定词
- php 的函数参数值类型限定
- 将'const xxx'作为'xxx'的'this'实参时丢弃了类型限定
- ANSI C中的细节问题之一:数据类型
- 类型限定符--restrict
- 泛型通配符的使用及类型限定上限
- C语言的volatile类型限定符
- objective-c基本数据类型和限定词
- dede 你所上传的软件类型不在许可列表,请更改系统对扩展名限定的配置
- c++中的类型限定符
- 《.NET框架程序设计》第七章 类型成员及其访问限定
- 打印分别由signed和unsigned限定的char , short, int ,与long类型变量的取值范围。
- C++问题,对象包含与成员函数不兼容的类型限定符
- 没有任何类型 Test1 的外层实例可访问。必须用类型 Test1 的外层实例(例如,x.new A(),其中 x 是 Test1 的实例)来限定分配。
- 【flex中的小问题累积】无法解析 CSS 选择器“ToolTip”中命名空间限定的类型“ToolTip”
- CUDA1.1-函数类型限定符与变量类型限定符