const修饰指针
const修饰指针有三种情况:
1、const修饰指针:—常量指针
2、const修饰常量:–指针常量
3、const既修饰指针,又修饰常量
巧记顺序:看到const翻译为常量;看到*翻译为指针
因此:
const int *p —常量指针
int * const p — 指针常量
巧记不能操作:
const离谁近,谁不能更改
const int p —离近,因此指向的值不能修改
int * const p —离p近,因此指针指向不能改变
#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;
}