所以我在使用 cin 读取文本文件时遇到了问题。这是我的代码的基本思想:
while(getline(cin,line) {
cout << line << endl;
}
//Do some task
return 0;
我遇到的问题是循环不会终止并且//Do some task 永远不会运行。我找到的唯一解决方案是直接查看文本文件,看看有多少行文本,然后硬编码一个条件来中断它。所以说我有一个包含 5 行和一个可变 int 行的文本文件。然后我会做这样的事情:
while(getline(cin,line) {
cout << line << endl;
if(row == 5) {
break;
}
//Do some task
return 0;
我试过谷歌搜索,但我似乎无法在任何地方找到答案。有任何想法吗?而且只有我被允许使用的库是 iostream。
最佳答案
你可以使用 rdbuf 来重定向你的 cin 输出 以下链接将为您提供帮助。 http://www.cplusplus.com/reference/ios/ios/rdbuf/
关于C++ 文本文件重定向 getline 无限循环,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46167999/