我们先来看一下const在修饰指针时有哪三种情况?
1、常量指针
const修饰指针 --- 常量指针
const修饰常量 --- 指针常量
const即修饰指针,又修饰常量
友情提示一下:图中的红色框和红色箭头表示不可修改的;黑色是可修改的
2、指针常量相对于常量指针来说,指针常量只是const的位置发生了改变
3、 指针常量还是常量指针?4、 const修饰指针和常量技巧:看const右侧紧跟着的是指针还是常量, 是指针就是常量指针,是常量就是指针常量
简单来说,就是const修饰哪一个部分,我们就无法对那个部分进行操作(修改)
5、简单的验证6、验证的源代码
源代码如下,大家可自取去编译器上进行验证
#includeusing namespace std; int main() { //1、const修饰指针 常量指针 int a = 10; int b = 10; const int* p = &a; //指针指向的值不可以改变,指针的指向可以改变 *p = 20; //错误 p = &a; //正确 //2、const修饰常量 指针常量 //指针的指向不可以改变,指针指向的值可以改变 int* const p2 = &a; *p2 = 100; p2 = &b; //错误 //3、const修饰指针和常量 const int* const p3 = &a; //指针的指向 和 指针指向的值 都不可以改 *p3 = 100; //错误 p3 = &b; //错误 return 0; }



