c++输入一组数以回车作为结束

如何把一组数输入数组(我事先不知道有多少个数)
数由键盘输入,空格隔开,回车结束输入。
请大家帮忙,先谢谢了。

不可能的,C++通常意义上的数组的大小必须翻译期确定,因为它会最终写入可执行代码。
你这种情况只能使用动态分配内存,
可以考虑使用 vector 或者 list,它们会自动增长管理的空间。追问

动态分配如何使用,新手不太会。。。

追答

vector nums;

nums.push_back(3);
nums.push_back(4);
nums.push_back(5);

.... 可以一直push_back, 使用 nums.size()可以得到它的大小。
同时也有使用和数组一样的方法来访问其中的数据,如 nums[1]等。

记得包含头文件 #include

追问

怎么赋值?没有赋值的语句啊?新手,真的新手。。这个是我的第一个程序。

追答

nums.push_back(3); 就是在向nums中加值。加在最后面,比如以前vector中的内容是{1,2},操作后就变成 {1,2,3}

温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-05-04
//include<>
int main(){
cout<<"plese"<<endl;
while(cin>>i){
v.insert(i);
}
//
第2个回答  2012-05-03
#include <stdio.h>
void main()
{
int arr[1000],i=0;
while(getchar()!='\n')
{
scanf("%d",&arr[i]);
i++;
}
}

不知道你说的是不是这个意思。。。追问

我事先是不知道数组长度的,能不能不申请1000长度的数组,是等输入完之后确定输入数据的个数,然后根据这个数确定数组的长度。

第3个回答  2012-05-04
用STL中的vector或者list容器都可@
相似回答