【发布时间】:2023-03-18 19:00:01
【问题描述】:
我无法弄清楚为什么以下程序中的循环没有准确地运行 testCount 次。请帮忙改正。
#include <iostream>
#include <string>
#include <sstream>
using namespace std;
int main() {
size_t testCount;
cin >> testCount;
if(testCount < 0 || testCount > 100) return 0;
int input;
while(testCount--) {
string instr;
getline(cin,instr);
istringstream iss(instr);
while(iss >> input) {
cout << input << endl;
}
}
return 0;
}
【问题讨论】:
-
将其更改为
cin >> testCount >> ws;。 Demo -
您应该首先自己跟踪错误。这个简单的代码大部分都可以通过这种方式轻松解决。
标签: c++ cin getline istringstream