const关键字与指针
Posted 小清奈
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了const关键字与指针相关的知识,希望对你有一定的参考价值。
const与指针在一起的几种情况。
const int *p1; //表示p1本身不是const,指向的变量是const. const *int p2; //语法错误 int const *p3; //表示p3本身不是const,指向的变量是const. int *const p4; //表示p4本身是const,指向的变量不是const. const int *const p5; //表示p4本身是const,指向的变量是const.
区分p本身是const还是指向的变量是const,一个简单的办法就是:去除掉类型,再分析。
例1:
const int *p1;
去掉int后就是:const *p1; 可以理解为const (*p1);就表示p1本身不是const,指向的对象是const。
例2:
int *const p4;
去掉int后就是:*const p4; 可以理解为* (const p1);就表示p4本身是const,指向的对象不是const。
最后,上面的分析方法仅仅是一种理解,在语法上是没有const *这种直接修饰的,其中" const *int p2 " 就是一个错误的例子。
以上是关于const关键字与指针的主要内容,如果未能解决你的问题,请参考以下文章