Mr.屎壳螂 发表于 2014-5-7 17:34:54

关于C语言的动态存储的问题,求助啊

我的问题是这样的:
C语言中有没有不用提前出入数据组数的动态分配方法?
为了清除的表示,我举个例子吧。
比如这样的是我会的
      int *a;
        int n,i;
        scanf("%d",&n);
        a=(int*)malloc((n+1)*sizeof(int));
        for(i=1;i<=n;i++)
        {
                scanf("%d",&a);
        }
这个提前输入了n,然后载进行分配,
有没有什么方法是不用提前输入那个n,
在你输入的时候自己判断输入的数据的组数,来进行分配?

sidfate 发表于 2014-5-7 19:09:06

这个在C++中实现了,用 new 替换 malloc 系统会自动控制大小

MAIR 发表于 2014-5-7 19:23:14

oggplay 发表于 2014-5-7 23:02:52

用链表吧。。。。

故乡的风 发表于 2014-5-7 23:50:24

抽象数据类型。C++中可用vector等模板类。如果想自己实现,可以使用线性表 ,根据情况选择顺序结构或链式结构。

喜欢散步 发表于 2014-5-8 20:22:09

链表行不, 我现在只学到链表, 要不, 在前面定义一个define,
页: [1]
查看完整版本: 关于C语言的动态存储的问题,求助啊