建立数组,大小由输入确定(C++)

如果要建立一个数组用于存储数据,但为了不浪费空间,数组的大小要由用户的输入确定,就是说用户可能会输入一个数据,也可能输入一百个数据,如何建立一个合适大小的数组来存储这些数... 如果要建立一个数组用于存储数据,但为了不浪费空间,数组的大小要由用户的输入确定,就是说用户可能会输入一个数据,也可能输入一百个数据,如何建立一个合适大小的数组来存储这些数据呢? 展开
 我来答
yangyang1356
2008-02-08 · 超过12用户采纳过TA的回答
知道答主
回答量:39
采纳率:0%
帮助的人:0
展开全部
可以用vector来实现
在头文件里包含
#include<vector>
声明变量是
vector <Datatype> a;
例如
vector <int> a;
然后可以用a.pushback(100);这样读入数据。
要用这个数据的时候直接a[0],a[1]这样输入下标就可以了
狈让炮bpd96
2008-02-08 · TA获得超过4971个赞
知道大有可为答主
回答量:2451
采纳率:0%
帮助的人:2680万
展开全部
你参考一下
#include "stdio.h"
#include "stdlib.h"
void main(void)
{
int sum=0;
int i=0;
int *data;

scanf("%d",&sum);
data=(int *)malloc(sizeof(int)*sum);
for(i=0;i<sum;i++)
scanf("%d",&data[i]);

for(i=0;i<sum;i++)
printf("%d ",data[i]);
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
fascinating_li
2008-02-08 · TA获得超过844个赞
知道小有建树答主
回答量:1944
采纳率:0%
帮助的人:1287万
展开全部
哀,动态分配内存么,倒搞什么花头么
用malloc函数calloc 或者realloc ,是C++就用 new 和delete
自己用脑算算就出来了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
手机用户70803
2008-02-08 · TA获得超过144个赞
知道答主
回答量:144
采纳率:0%
帮助的人:130万
展开全部
推荐的做法,用stl做,vector, push_back操作。
如果你想自己实现,看看vector 实现原理,就是类似指数增长分配内存。
然后拷贝都新的地方。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式