为了较好的区分指针常量与常量指针,定义一个规则:
const修饰符后面不建议直接跟指针说明符号(*)。
根据以上规则,以指向int类型的指针为例,那么就只有以下3中方式。
const int * p;//可以p++,不能(*p)++ int * const p;//可以(*p)++,不能p++ const int * const p;//不能(*p)++,不能p++
也就是说const离谁近,谁就是不能通过指针改变的。
const离类型近,那么不能修改指针指向类型的内容。
const离指针近,那么不能修改指针的内容。