【发布时间】:2017-01-24 20:31:18
【问题描述】:
我想知道是否可以有多个while (cin>>(variable)),如下代码所示:
#include <iostream>
#include <vector>
using namespace std;
int main()
{
vector<int> v1, v2;
int input;
while (cin>>input)
v1.push_back(input);
while (cin>>input)
v2.push_back(input);
return 0;
}
我的程序的逻辑是让用户在两组 int 向量中定义元素的数量和每个元素的值。
但是,我意识到在为第一个向量输入第一组数字(以 EOF 结尾)后,我无法为第二个向量输入第二组数字,程序立即终止。我怀疑用于第一个向量的第一个 cin 的 EOF 也由第二个向量的第二个 cin 处理。
上面的程序有什么方法可以正确运行,即有多个 while (cin)?
【问题讨论】:
-
您尝试过使用调试器吗?
-
@AlgirdasPreidžius 调试器能在多大程度上提供帮助?
-
@πάνταῥεῖ 好吧,它至少会摆脱诸如我怀疑...这样的陈述。
标签: c++ vector while-loop cin