常量指针与指针常量

 1、看 * 和 const 的排列顺序

int const* p;	//const * 即常量指针   指向的量是常量
const int* p;	//const * 即常量指针
int* const p;	//* const 即指针常量   指针的地址是常量

 2、

int const* p;	//const修饰的是*p,即*p的内容不可通过p改变,但p不是const,p可以修改,*p不可修改;
const int* p;	//同上
int* const p;	//const修饰的是p,p是指针,p指向的地址不能修改,p不能修改,但*p可以修改;

 

3、

常量指针:被指向的对象是常量

指针常量:指针本身是常量(指向地址也不可以变,所以也是常量)

*前面的是对被指向对象的修饰,*后面的是对指针本身的修饰。

 

 

 

你可能感兴趣的:(C++)