const关键字
常量指针 意思是 常量的指针 无法通过指针去修改所指向的值
指针常量 意思是 指针的常量 而指针就是地址,地址不变就是方向不变
const位置看常量在前在后, 常量指针中 常量在前,则const在前,指针常量中 常量在后则const在后
代码如下
#include <iostream>
using namespace std;
int main() {
int a = 11;
const int* p1 = &a; //常量指针
cout << *p1 << endl;
//*p1 = 3; 错误 无法通过常量指针去修改变量值
a = 33; //正确,常量指针所指变量仍然可以通过本身去改变(常量指针所指的变量并不一定是常量)
cout << *p1 << endl;
int b = 22;
int* const p2 = &b; //指针常量
cout << *p2 << endl;
*p2 = 33;
cout << *p2 << endl;
//p2 = &a; 错误 因为指针常量无法修改指针方向 即无法修改地址
}