正被用作输入的文件是包含一个.txt文件:为什么这是一个永无止境的循环?
Line 1
Line 2
Line 3
Line 4
Line 5
而且它正在对我的代码3号线开通。然而,while循环从不终止,持续向控制台打印“Pass”,为什么在第5行文本之后没有找到infile.eof()
?
int main(int argc, char** argv) {
ifstream infile;
infile.open("TEST.txt", ios::in);
if(infile.is_open()){
while(!infile.eof()){
cout << "Pass" << '\n';
}
}
else{
cout <<"Fail";
}
}
即使你会读一些东西,检查'eof'或'bad'不是从'ifstream'中读取的正确方法。 – pmr