让我们看一下这个程序:
ifstream filein("hey.txt");
if(filein.eof()){
cout<<"END"<<endl;
}
这里的"hey.txt"是空的。所以if条件应该是真的,但实际上不是。
为什么即使文件为空,eof也没有返回true呢?
如果在if
之前添加了这个,那么eof将返回true,尽管arr
仍然为空且文件仍然为空,两者都没有改变。
char arr[100];
filein.getline(arr,99);