指向指针的指针是一种多级间接寻址的形式,或者说是一个指针链。
通常,一个指针包含一个变量的地址。当我们定义一个指向指针的指针时,
第一个指针包含了第二个指针的地址,第二个指针指向包含实际值的位置。
声明 :
int **var;
当一个目标值被一个指针间接指向到另一个指针时,访问这个值需要使用两个星号运算符
#include <stdio.h>#include <stdlib.h>#include <stdarg.h>const int MAX = 3;int main(int argc, char *argv[]) {int a; //定义变量int *ptr1; // 定义一个指针ptr1int **ptr2; // 定义一个指针指向指向 ptr2 还为指向a=100;ptr1=&a; // 把a的地址给指针 ptr1ptr2=&ptr1; // 获取ptr1 的地址 ptr1 的地址指向了 ptr2// 打印看看printf("Value = %d\n",a);printf("ptr1 =%#p\n",&ptr1);printf("*ptr 的值 =%d\n",*ptr1);printf("ptr2的地址=%#p\n",&ptr2);printf("ptr2的值=%d\n",**ptr2);return 0;}
打印
