常量指针
const int *p = &a; //常量指针
常量指针中const限定的是指针指向的int类型变量
const常量 int *指针 p = &a;
常量指针可改变指向内存空间地址,不可改变指向内存空间存储值
*p = 20; //错误,指针指向的内存空间的存储值不可更改
p = &b; //正确,指针指向的内存空间地址可以更改
指针常量
int * const p = &a; //指针常量
指针常量中const限定的是指针变量,因此p的值不可更改
int *指针 const常量 p = &a;
指针指向的内存地址不可更改,指针指向的内存空间的存储在可以更改
*p = 20; //正确
p = &b; //错误
const既修饰指针又修饰变量
const int * const p = &a;
此时指针 p 存储的内存地址和内存存储空间存储的内容都无法更改