1、一级指针就是指指针,就是内存地址,二级指针就是指向指针的指针,就是地址的地址,打个比方,有一个箱子,里面有要的东西,钥匙能打开箱子,钥匙就是一级指针,你要用钥匙打开别的箱子去拿到开要的东西的箱子的钥,那手上的钥匙就是二级指针,如此类推。
2、例如:
int a; //a是一个int类型的变量,它的值是一个整数
int *pa = &a; //pa 是一个int *类型的变量,它的值是一个int型变量的地址
int **ppa = &pa; //ppa是一个int **型的变量,它的值是一个int *型变量的地址
-------------------------------------------------------------------------------------------------------------------
int **ppa实际上里面装的就是一个int*的地址 int *pa实际上里面装的就是一个int型的地址 仅此而已
-------------------------------------------------------------------------------------------------------------------
书上定义:
例如int**p,它分成两部分,int*和(*p),后面的(*p)表示p是指针变量,前面的int*表示p指向的是int*型的数据。
也就是说p指向一个整型指针变量(而这个整型指针变量指向一个整形数据
-------------------------------------------------------------------------------------------------------------------
综上:
一级指针是存储变量地址;你可以再把一级指针看成一个变量,二级指针存储一级指针的地址。
原文地址:https://www.cnblogs.com/qkhbnu/p/11666882.html