指针变量也是变量,也有自己的存储地址,如果再次定义变量来保存指针变量的存储地址,这个地址就是指向指针变量的指针。
语法:类型** 变量名;
void zhizhentest4_2(){
int a = 5;
int* p = &a;
int** pt = &p;
printf("%p\n", p);
printf("%p\n", pt);
printf("%d\n", **pt);
}
输出:
0012FEB4
0012FEB0
5
指针变量p保存的是a的地址0012FEB4
指针变量pt保存的是p的地址0012FEB0,而p本身保存的是指针,所以pt保存的是指向指针变量p的指针(内存地址)
*pt表示获取pt所指向的变量p,而p本身也只指针变量,保存的是a的地址,所以还需要再加一个*来取p所指的变量a