文章目录
一、指针的指针
指针用来存放变量的地址,同时,指针也有自己的地址,因此,就可以设置一个指针变量,用来存放指针的地址,也就是指针的指针,他存放的是一个地址,通过取值符*可以取出相应位置的值
-
格式:**p
-
图片解释:
-
代码实现:
#include<stdio.h> int main(){ int a = 10; int *p1; int **p2; int ***p3; p1 = &a; p2 = &p1; p3 = &p2; printf("a的值:%d\n",a); printf("p1地址的值(a的地址):%p\n",p1); printf("p1地址存放的值(a的值):%d\n",*p1); printf("p2地址的值(p1的地址):%p\n",p2); printf("p2地址存放的值(p1的值,a的地址):%p\n",*p2); printf("p2地址存放的整数的值(a的值):%d\n",**p2); printf("p3地址的值(p2的地址):%p\n",p3); printf("p3地址存放的值(p2的值,p1的地址):%p\n",*p3); printf("p3地址存放的整数的值(a的值):%d\n",***p3); return 0; }
-
运行结果:
a的值:10 p1地址的值(a的地址):0x7ffd25ad858c p1地址存放的值(a的值):10 p2地址的值(p1的地址):0x7ffd25ad8590 p2地址存放的值(p1的值,a的地址):0x7ffd25ad858c p2地址存放的整数的值(a的值):10 p3地址的值(p2的地址):0x7ffd25ad8598 p3地址存放的值(p2的值,p1的地址):0x7ffd25ad8590 p3地址存放的整数的值(a的值):10