1.什么是const? const是一个类型修饰符 使用const修饰变量则可以让变量的值不能改变
2.const的作用 1)可以定义const常量,具有不可变性 2)便于进行类型检查,使编译器对处理内存有更多了解,消除一些隐患。例如void f(const int i){}编译器就会知道i是一个常量,不允许修改 3)可以避免意义模糊的数字出现,同样可以很方便地进行参数的调整和修改。 4)可以防止要保护的东西意外被修改 5)节省空间 6)提高效率,不会给const修饰的变量分配空间,直接放在符号表中
3.使用的地方 1)修饰一般变量,使其变成常量 2)修饰指针变量 3)修饰数组
例如: - int a = 3;
- int b = 4;
- //1.const修饰的指针变量的指向可以改变,指向的变量的值不可改变
- const int *p = &a;
- p = &b;//不会报错
- *p = 100;//会报错
-
- //2.const修饰的指针变量,指向的变量的值可以改变,指向不可改变
- int * const p2 = &a;
- *p2 = 100;//不会报错
- p2 = &b;//报错
-
- //3.const修饰的指针变量,指向和指向的变量的值都不可改变
- const int * const p3 = &a;
- *p3 = 100;//报错
- p3 = &b;//报错
- /*记忆技巧:
- 看const和*的位置
- 1.const 在*的左侧:表示指针指向的值不可改变,指向可以改变
- 2.const 在*的右侧:表示指针指向的值可以改变,指向不可以改变
- 3.const 出现在*的两侧,表示两个都不能改变
- */
复制代码
|