才疏学浅,欢迎指正
#include<stdio.h>
int main()
{
int b = 1;
int *p;
int **ptr;
p = &b;
printf("*p = %d\n", *p);
*ptr = p; //等于ptr = &p
printf("**ptr = %d\n", **ptr);
}
/*
int *p;
指针p的类型是int *
在等号右侧时 p 的返回值是 int *
&p的返回值是int **
因为&+任意变量名的返回值是*+(int、char...),故当二级指针ptr在等号左侧为
*ptr时 其指向的类型为int * 需要等号右边为 p
ptr时 其指向的类型为int ** 需要等号右边为 &p
*/
运行截图