C++ 如何实现读取一行被空格分开的一组数值 并存入数组或容器中

假设输入 4 7 15 2 74
回车后可以建立数组 a[0]=4 a[1]=7 a[2]=15 a[3]=2 a[4]=74
求指导

工具/材料:以Microsoft Visual Studio 2010为例。

1、首先在桌面上,点击“Microsoft Visual Studio 2010”图标。

2、然后在该界面中,输入读取一行被空格分开的一组数值,并存入数组或容器中的代码“ string input;  getline(cin, input);  stringstream stringin(input);”。

4、最后在该界面中,输入存入数组或容器中的代码“int num; vector<int> a; while (stringin >> num) { a.push_back(num); } for (int i = 0; i < a.size(); i++) { cout << "a[" << i << "] = " << a[i] << " "; } cout << endl;”。

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2016-12-04
#include <iostream>
#include <vector>
#include <string>
#include <sstream>
using namespace std;

int main() {
string input;
getline(cin, input);
stringstream stringin(input);
int num;
vector<int> a;
while (stringin >> num) {
a.push_back(num);
}
for (int i = 0; i < a.size(); i++) {
cout << "a[" << i << "] = " << a[i] << " ";
}
cout << endl;
}

追问

之前不知道用stringstream 百度了一下 懂了点儿
你给的代码 编译没错 结果也对 可是需要敲两次回车才可以实现输出(vc 6.0) 能不能再修正下 多谢了!

追答

VC6不清楚,按理来说不需要2次,按1次就ok了

本回答被提问者和网友采纳
相似回答