一、多级指针的概述
多级指针是指指向指针的指针,是存放地址的地址空间。
在C语言中可以有多级指针,语法如下:
1. 二级指针:指向一级指针的指针
int **pp; // pp是一个二级指针
2. 三级指针:指向二级指针的指针
int ***ppp; // ppp是一个三级指针
3. 更多级指针类似定义。多级指针在使用时需要逐步解引用:
int n = 10; int *p = &n; int **pp = &p; printf("%d", **pp); // 两次解引用打印n的值
多级指针可以用来动态分配多维数组,或者实现某些数据结构如链表、树等。但过多的间接寻址也会影响代码可读性。通常二三级指针就能满足大多数应用,过多级指针应该避免,可以考虑用typedef或封装来提高可读性。