求解,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);

}

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

不知道你这个问题是否已经解决, 如果还没有解决的话:

如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^