多级指针可以理解为指针的指针,即指向一个指针的指针。

  例如下列例子中:


    int main(){
        int a;
        int* p;
        int** q;
        int*** r;
        x = 6;
        p = &x;
        q = &p;
        r = &q;
        printf("%d", *p);   // 输出x的值
        printf("%d", *q);   // *q即为指针p的值,所以输出的为x的地址
        printf("%d", **q);  // **q即为*p的值,即为对指针p进行解引用,所以输出x的值
        printf("%d", **r);  // **r即为*q,即为指针p的值,所以输出x的地址
        printf("%d", ***r); // ***r即为**q,即为*p的值,所以输出x的值
        return 0;
    }