为什么在我到达文件末尾但未设置eofbit时设置了故障位

时间:2018-07-29 10:11:19

标签: c++

我有此代码:

#include <iostream>
#include <vector>

int main()
{
    std::vector<int> vec;
    int num = 0;
    while (std::cin >> num)
        vec.push_back(num);
    std::cout << std::cin.eof() 
              << " " << std::cin.fail()
              << std::endl;
    return 0;
}

当我使用输入运行它时:8 6 4 1 ^ Z,我得到的输出是:0 1为什么在命中文件末尾时设置了故障位,但未设置eofbit,为什么在命中末尾时设置了故障位?文件

0 个答案:

没有答案