std::basic_ios::eof
性病:基本[医]IOS::EOF
bool eof() const; | | |
---|
回报true
如果关联的流已到达文件末尾.。具体来说,返回true
如果eofbit
设为rdstate()
...
见ios_base::iostate
的条件列表eofbit
...
参数
%280%29
返回值
true
如果文件已经结束,false
否则。
注记
此函数只报告最新I/O操作设置的流状态;它不检查关联的数据源。例如,如果最近的I/O是get()
返回文件的最后一个字节,eof()
回报false
.下一个get()
无法读取任何内容,并设置eofbit
.只有那时eof()
回报true
...
在通常情况下,输入流处理会在任何错误上停止;eof()
和fail()
然后用于区分不同的错误条件。
例
二次
#include <iostream>
#include <fstream>
#include <cstdlib>
int main()
{
std::ifstream file("test.txt"
if(!file) // operator! is used here
{
std::cout << "File opening failed\n";
return EXIT_FAILURE;
}
// typical C++ I/O loop uses the return value of the I/O function
// as the loop controlling condition, operator bool() is used here
for(int n; file >> n; ) {
std::cout << n << ' ';
}
std::cout << '\n';
if (file.bad())
std::cout << "I/O error while reading\n";
else if (file.eof())
std::cout << "End of file reached successfully\n";
else if (file.fail())
std::cout << "Non-integer data encountered\n";
}
二次
另见
下表显示basic_ios
访问器%28good()
,,,fail()
的所有可能组合的%29。ios_base::iostate
旗帜:
ios_base::iostate flags | basic_ios accessors |
---|---|
eofbit | failbit |
false | false |
false | false |
false | true |
false | true |
true | false |
true | false |
true | true |
true | true |
feof | checks for the end-of-file (function) |
---|
© cppreference.com
在CreativeCommonsAttribution下授权-ShareAlike未移植许可v3.0。