c++ - 如何测试 int 的文件输入?
问题描述
我有一个程序可以从文件中读取整数并将它们分配给某些变量。我在下面有这段代码来错误检查来自文件的信息。如果信息不是正整数,则 if 语句应该捕获它并重置变量和 io 流。
int quantity;
input >> quantity;
if(input.fail() || (quantity < 0)){
quantity = 0;
input.clear();
input.ignore(200, ' ');
}
但是,如果信息是双精度的,则它不会输入此代码块,并且我的程序的其余部分将停止正常工作。当我的文件中出现双精度时,如何让我的程序输入 if 语句?
解决方案
推荐阅读
- javascript - 如何在基于某些行记录数据加载时禁用 extJS 网格中的网格单元
- php - 在 XML 文件中计算多个价格并在 WP All Import 中只导入一个
- powershell - 如何一次删除多个文件名中下划线之前的所有字符?
- java - 有什么方法可以简化我的 java 代码?
- macos - 如果我没有配置 cron 作业,为什么 crontab 会运行我的脚本?
- rundeck - Rundeck 中的复选框选项
- python-3.x - 如何选择数据框中的一行,其中一个单元格值尽可能接近另一个预定义值
- java - 上传文件到谷歌云存储(JAVA)
- react-native - React Native TensorFlow 问题
- flutter - Flutter 自定义滑块