char * const c;
指针常量 是 指针类型的常量,即指针本身是常量,只能指向固定的区域;但该区域中的内容
可以改变。
const char *c; 或 char const *c;
常量指针 是 指向常量的指针 ,即指针指向区域的内容是常量,不能更改;但该指针可以指向
其它区域。
辨别方法可为:从左到右顺序读*读作指针,const读作常量,谁在后谁决定本质。
指针常量 是 指针类型的常量,即指针本身是常量,只能指向固定的区域;但该区域中的内容
可以改变。
const char *c; 或 char const *c;
常量指针 是 指向常量的指针 ,即指针指向区域的内容是常量,不能更改;但该指针可以指向
其它区域。
①const int p;
②const int* p;
③int const* p;
④int * const p;
⑤const int * const p;
⑥int const * const p;
第一种是常量整数,没什么好说的。
后面五种是指针,有一个简便的办法记忆。
从右往左读,遇到p就替换成“p is a ”遇到*就替换成“point to”。
比如说②,读作:p is a point to int const.
p是一个指向整型常量的指针。
③读作:p is a point to const int.
意思跟②相同。
④读作:p is a const point to int.
p是一个常量指针,指向整型。
⑤读作:p is a const point to int const.
⑥读作:p is a const point to const int.
⑤和⑥的意思相同,p都是常量指针,指向整型常量。