请问在C里面,我要定义一个数组,但是数组的大小不确定

怎样做?
请问在C里面,我要定义一个数组,但是数组的大小不确定,怎样可以做到动态的定义数组的大小?
悬赏分:0 - 解决时间:2008-10-7 23:20
提问者: gyt_ltd - 试用期 一级 最佳答案
#include <stdlib.h>

int *a;

a=malloc(sizeof(int)*10); /*为a动态分配10个int类型的存储单元*/

.../*可以像操作静态数组那样操作a*/

free(a);/*释放为a分配的空间*/
这里有个,不会用……
怎么赋值?

第1个回答  2009-02-01
在C语言中,只有在堆上才能申请动态数组。通过malloc可以申请用户自由输入长度的数组,通过realloc可以将已有的内存区域重新分配(扩充或缩减)。
第2个回答  2009-02-01
和int a[10]用法一样。

好好学习数组和指针的关系,重定向和索引的关系。
第3个回答  2009-02-01
赋值:
*(a+i) = 0; /* i 是数组下标 */

或者
a[i] = 0; /* 也可以,但我个人不推荐。*/本回答被提问者采纳

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网