gpt4 book ai didi

c++ - 为什么这是一个永无止境的循环?

转载 作者:太空宇宙 更新时间:2023-11-04 15:19:40 25 4
gpt4 key购买 nike

用作输入的文件是一个 .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";
}
}

最佳答案

因为您实际上从未使用(读取)infile 中的任何内容来推进文件指针。代码只是不断地检查 EOF,但实际上并不读取文件的任何内容。

关于c++ - 为什么这是一个永无止境的循环?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22361470/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com