const修饰符常常需要在c++中使用到,需要注意到他对于指针修饰的时候的不同区别。
#include<iostream>
using namespace std;
int main()
{
//1.const修饰指针
int a = 10;
int b = 10;
const int* p = &a;
//指针指向的值不可以改,指针的指向可以改
// //*p = 20; 错误
p = &b;//正确
//2.const修饰常量 指针常量
//指针的指向不可以改,指针指向的值可以改
int * const p2 = &a;
*p2 = 100; //正确的
//p2 = &b; //错误,指针的指向不可以改
//3.const修饰指针和常量
const int* const p3 = &a;
//指针的指向 和 指针指向的值 都不可以改
//*p3 = 100; //错误
//p3 = &b; //错误
system("pause");
return 0;
}
技巧:看const右侧紧跟着的是指针还是常量,是指针就是常量指针,是常量就是指针常量