求解,C语言malloc分配内存问题
int fun(char***buf)
{
    int i;char tem[5];
    for(i=0;i<5;i++)
    {
        *buf[i]=(char*)malloc(10*sizeof(char));
    }
    for(i=0;i<5;i++)
    {
        sprintf(tem,"tem%d",i);
        *buf[i]=tem;
        printf("%s\n",*buf[i]);
    }
} 
int main()
{
    char**buf;
    buf=(char**)malloc(5*sizeof(char*));
    fun(&buf);

}

1个回答

你想问的问题是什么?三重指针?这里指针的指针用来表示二维数组,而指针的指针的指针,用来在主程序将指针的指针传进去,函数修改后再传回来。

weixin_45135245
WYJ开怪 就是不知道,为什么内存分配时2个后就报错了
8 个月之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问