c语言小程序,指针的使用?

为什么使用二级指针就不会有问题?voidMallocMem(char**pc){*pc=(char*)malloc(100);return;}voidMallocMem(... 为什么使用二级指针就不会有问题?
void MallocMem( char** pc){ *pc=( char*) malloc(100); return;}

void MallocMem( char* pc){ pc=( char*) malloc(100); return;}

完整版:

# include<stdio.h>
# include<stdlib.h>
void MallocMem( char** pc){ *pc=( char*) malloc(100); return;}

int main(){ char* str= NULL;
MallocMem( &str);
strcpy( str," hello");
strcat( str+2," world");

printf("% s", str); return 0;}
展开
 我来答
wggood1
2019-10-21 · TA获得超过102个赞
知道答主
回答量:84
采纳率:66%
帮助的人:49.6万
展开全部
因为char*表示char的指针,只能把char类型的值传出函数;char**可以看成char*的指针,可以把char*类型的值传出函数,相当于(char*)(*pc),所以要用*pc=( char*) malloc...
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式