您的位置:首页 > 其它

关于定义一维动态数组的问题

2014-04-30 15:56 387 查看
我刚开始时是这样直接定义一维动态数组的int a
;一运行就出错说a的size不能为0;我就想到应该给a分配空就像我们定义一个固定数组a[10];一样系统会自动帮a分配空间;

int n;

scanf("%d",&n);

int *ch=(int*)malloc(sizeof(int*)*n);

for(int i=0;i<n;i++)

scanf("%d",&ch[i]);

printf("%d",ch[n-1]);

free(ch);

上面的代码就定义了一维动态数组并输出数组最后一个值。

但是我不明白int *ch=(int*)malloc(sizeof(int*)*n);只是分配空间而已怎么ch就成了一个数组了;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: