【发布时间】:2018-02-20 10:06:43
【问题描述】:
所以我在使用 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。
【问题讨论】:
-
我没有使用 fstream。我正在使用 eclipse,我进入运行配置并重定向 cin 以使用外部文本文件。
-
我刚刚运行了你的程序的第一个版本,非常适合我。你的文件里有什么?
-
行初始化为 0 吗?你在哪里增加它?并使用 ifstream 对象
-
谢谢大家。我设法弄明白了
-
那是什么?供将来参考..
标签: c++ infinite-loop cin getline