首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

用malloc动态申请/释放二维数组,该怎么解决

2012-05-01 
用malloc动态申请/释放二维数组C/C++ code#includestdio.h#includestdlib.hmain(){int n,ichar str[1

用malloc动态申请/释放二维数组

C/C++ code
#include<stdio.h>#include<stdlib.h>main(){    int n,i;    char str[100],**p=NULL;    scanf("%d\n",&n);    p=(char **)malloc(sizeof(char *)*n);    for(i=0;i<n;i++)    {        gets(str);        p[i]=(char *)malloc(sizeof(str));    }    for(i=0;i<n;i++)    {        printf("%s",*(p+i));        free(p+i);    }}

为什么错呢?

[解决办法]
for(i=0;i<n;i++)
{
printf("%s",*(p+i));
free(*(p+i));
}

热点排行