目录
###指针传参时要用二级指针
###函数体内部想要修改函数外部指针变量值的时候需要使用二级指针(指针变量的地址)
###指针传参时要用二级指针
char *str[5];
int Fun(char **ppstr,int len);
###函数体内部想要修改函数外部指针变量值的时候需要使用二级指针(指针变量的地址)
下面图1代码不会打印出hello world因为是值传递,而不是地址传递。是把空的指针pret传给了ptmp;ptmp会随函数结束被回收;
因此必须要取地址才可以成功的打印;如图2
当函数体内部想要修改函数外部指针变量值的时候需要使用二级指针
当函数体内部想要修改函数外部的值的时候需要使用指针地址
图解如图3,图4
如下图为图1的代码说明,右边函数体中只是把字符串的首地址给了ptmp,当函数体销毁的时候pret还是为NULL;
如下图为图2的代码说明,右边函数体中把字符串的首地址给了prmp中存的指针指向的空间,也就pret;所以当右边函数销毁时,pret仍然等于字符串。