int a = 10;
int b = 20;
printf("%d %d\n",a,b);//10 20
int *p = &a;//p里保存a的地址
*p = 100;//对p解引用,将p指向的地址的内容赋为100
p = &b;//p指向b
*p = 200;//将p指向的地址的内容赋为200
printf("%d %d\n",a,b);// 100 200
int **pp = &p;//二级指针pp指向p
*pp = &a;//对pp解引用一次,即,使p指向a
**pp = 1000;//对pp两次解引用,第一次对pp解引用即p里面保存1000,
//第二次对p解引用即a里面保存1000
printf("指向a时p的内容:%d\n",*p);//1000
*pp = &b;//pp指向b
**pp = 2000;//第一次对pp解引用即p里面保存2000,
//第二次对p解引用即b里面保存2000
printf("指向b时p的内容:%d\n",*p);//2000
printf("%d %d\n",a,b);//1000 2000
int ***ppp=&pp;
**ppp=&b;//使p指向b
***ppp=20000;//对ppp解引用三次
printf("pp内容:%d p内容%d b=%d\n",**pp,*p,b);//20000 20000 2000
**ppp=&a;//使p指向b
***ppp=10000;//对ppp解引用三次
printf("pp内容:%d p内容%d a=%d\n",**pp,*p,a);//10000 10000 10000
void * loginSuccessAction(char* msg){
printf("登录成功:%s",msg);
}
//第一个参数为函数名称 第二个参数是传递参数
void(*success)(char* msg) = loginSuccessAction("哈哈哈");
success;//函数执行