编写程序时,想拿出子函数的二维数组数据,上网找了一圈就卡在如何返回。
参考了几篇博客,了解到子函数内存malloc请求形式,及主函数释放内存的需要
这里只做个人记录,后期再完善。
char **arry(int n)
{
char **temp;
//申请行内存
temp=(char **)malloc (n * sizeof(char *));
while( )
{
char str[]= "Hello world";
//申请列内存
temp[i]=(char *)malloc (sizeof(str));
strcpy(temp[i],str);
}
}
int mian()
{
char **PP;
pp=arry(5);
for( ; ;)
printf(" %s ",pp[i]);
//释放内存
for(i=0;i<5;i++)
free(pp[i]);
free(pp);
}
参考了这篇博:https://blog.csdn.net/robert_chen1988/article/details/53548848