const修飾指針的三種情況:
1.const修飾指針----常量指針
2.const修飾指針----指針常量
3.const既修飾指針又修飾常量
4.總結:看const右側緊跟着的是指針還是指針常量 ,是指針就是常量指針,是常量就是指針常量。
5.代碼
#include<iostream>
using namespace std;
int main()
{
int a = 10;
int b = 10;
/* 1.const修飾指針 常量指針*/
const int* p1 = &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; //錯誤
return 0;
}