什么是Const
Const是一个类型修饰符
使用const修饰变量则可以让变量的值不能改变
常类型是指使用类型修饰符const的类型。常类型的变量或对象值是不能被更新的。
Const有什么主要作用?
(1)可以定义const常量,具有不可变性。例如:const int max=100; int attay[max];
(2)便于进行类型检查,使编译器对处理内容有更多的了解,消除了一个隐患。
例如:void f(const int i){..........}编译器就会知道i是一个常量,不允许修改;
(3)可以避免意义模糊的数字出现。
(4)提高效率,节省空间。编译器不为const分配空间,而是将它保存在符号表中。
Const 使用的地方
(1)修饰变量,使得变量变成常量
Const int a=10;
a=200;--->会报错 因为a是只读的不能被修改。
Printf(“%d”,a);
(2)修饰指针变量
1.指针变量P的指向可以改变,但是指向的变量的值不能改变。
Int a=10;
Int b=20;
Const int *p=&a;
P=&b --->指向改变 未报错。
*p=1000------>指向的变量的值改变 报错。
2.指针变量指向的变量值可以改变,指向不能变
Int * const P2=&a;
*p2=200; //值可以改变
P2=&b; //指向不能改变
3.const修饰的指针变量的指向和值都不能改变。
Const int *const p2=&a;
P3=&b; //指向的变量的值不能变
*p3=100; //指向不能变
记忆技巧:const 如果在*的左侧,表示指针变量指向的变量的值不能变,但是指向可以改变。 Const 如果在*的右侧,表示指针变量指向的变量的值可以改变,但是指向不能改变。 Const如果在*的两次,表示都不能改变。
(3)修饰数组 |
|