int ** 的理解
int ** 的理解
int **p;
int * p, 比较容易理解,就是定义一个指向int类型的指针。那么这里的int **p是什么呢?
对于这种特殊形式,首先可以确定的是p是一个指针,因为p前面不但有 * 号而且还有两个 * 号,所以肯定是指针。
那么两个 * 号又是什么意思呢?
把int **p分解为以下形式,和int *p比较,就会看的比较清楚
int * p; //指针p指向 int类型
int * * p;//指针p指向int * 类型
- 1
- 2
其实上面的两种形式区别就在于:指针指向的内容的类型不同,一个指向int类型一个指向int * 类型
int a = 10;
int *q;
int **p;
q = &a;//q 指向 a
p =&q; //p 指向q, q是一个int类型指针
- 1
- 2
- 3
- 4
- 5
- 6
该程序段执行完毕后内存映像如下:
————————————————
版权声明:本文为CSDN博主「hw2169」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/hw2169/article/details/103792090