c++ - 为什么当我点击文件结尾时设置了failbit但没有设置eofbit
问题描述
我有这个代码:
#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,为什么在到达文件结尾时设置了失败位
解决方案
推荐阅读
- flutter - Flutter单击Navigator.push,即使我关闭应用程序,视频也会继续播放
- reactjs - 每次单击按钮时都进行反应,它会通过任意颜色列表,但会随机停止工作
- python - 如何使用 facebook 先知输出拟合的时间序列数据?
- reactjs - 在 Jodit 编辑器中试图允许突出显示但不更改实际文本
- visual-studio - 使用 ipynb 文件的 VS CODE 中的 KERNER INSTALL 错误
- android - 无法导入 asStateFlow
- firebase - 使用 Firestore 的“日期”类型而不是数字有优势吗?
- apache-camel - Camel - 捕获 SQL 异常并尝试 3 次
- regex - 正则表达式将字符串拆分为浮点数/数字和字符串
- reactjs - 在行悬停时显示蚂蚁设计弹出框