C++ ifstreamfailbit 和 badbit

2023-11-29

的情况下ifstream在C++中,在什么条件下failbit and badbit标志设置?


根据cplusplus.com:

failbit当错误与操作本身的内部逻辑相关时,通常由输入操作设置,因此流上的其他操作也是可能的。尽管badbit通常在错误涉及流完整性丢失时设置,即使对流执行不同的操作,这种情况也可能持续存在。 badbit可以通过调用成员函数bad来独立检查。

In 简单的话,如果你得到一个number当期望检索一个letter, it's failbit. If a serious发生错误,这会完全破坏从流中读取数据的能力 - 这是一个badbit.

除了提到的标志之外,还有第三个非常相似 -eofbit。您可以使用多个函数检查状态:ios::fail, ios::good and ios::bad

并且你可以熟悉iostream库也在 MSDN 资源中。

Finally,如果您搜索correct关于如何在读取文件(或访问某些文件或目录)时处理所有错误位和异常的解决方案,我强烈建议您阅读一篇非常全面且写得很好的文章“使用 ifstream 在 C++ 中读取文件:正确处理 badbit、failbit、eofbit 和 perror()”,最后你会发现一些理想的解决方案。这篇文章确实值得一读。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

C++ ifstreamfailbit 和 badbit 的相关文章

  • 如何指定 set precision 舍入

    当流到 std 输出时 我可以指定 set precision 对双精度值进行舍入吗 ofile lt lt std setprecision 12 lt lt total run time TIME lt lt n Output 0 75
  • C 语言中的套接字如何工作?

    我对 C 中的套接字编程有点困惑 You create a socket bind it to an interface and an IP address and get it to listen I found a couple of
  • C++11 中具有 C 链接的复杂类型

    我需要将 C 库的标头包含到我的 C 11 代码中 现在 标头提供了涉及大量的例程和数据结构double complex到处都是 例如 include
  • 纹理映射 C++ OpenGL

    我已经阅读了相关内容 包括 Nehe 和此处的解决方案 但我找不到具体的答案 我正在尝试加载一张名为stars jpg 的照片 我想通过使用 uv 坐标映射它来使其成为场景的背景 方法是 glBegin GL QUADS glTexCoor
  • 使用 strcpy 从整数生成指针,无需进行强制转换

    我不明白我做错了什么 我正在学习 C 很抱歉 如果这显然是错误的 但我正在尝试使用uthash http uthash sourceforge net 制作股票及其价格的哈希图 但是当我将股票添加到哈希映射时 我收到上述错误 我所做的就是从
  • 如何通过实体键添加/删除与实体框架的多对多关系?

    I tried using Entities e new Entities EntityKey key new EntityKey Entities Users UserId 20 User user new User EntityKey
  • 确保 unsigned int/long 始终在 C# 中的检查上下文中执行

    有没有人觉得奇怪 uint 和 ulong 的默认上下文是未检查的 而不是检查的 因为它们旨在表示永远不能为负的值 因此 如果某些代码试图违反该约束 在我看来 自然且首选的行为是抛出异常 而不是返回最大值 这很容易使重要数据处于无效状态并且
  • 在 PHP 扩展中,推荐从 std::string 返回值的方法

    我们有一个简单的 PHP 函数 其目的是调用 C 自由函数std string callLibrary std string 并返回其std string返回值 目前看起来是这样的 PHP FUNCTION call library cha
  • .NET:EventHandler 竞争条件修复如何工作?

    以下模式用于在引发事件时避免竞争条件 以防另一个线程取消订阅 MyEvent 使其为空 class MyClass public event EventHandler MyEvent public void F EventHandler h
  • 从 C++ 中的函数返回二维数组[重复]

    这个问题在这里已经有答案了 可能的重复 C 从函数返回多维数组 https stackoverflow com questions 3716595 c returning multidimension array from function
  • 如何正确实现带有 close 方法的处置模式(CA1063)

    框架设计指南 第二版 第 327 页 说 考虑提供方法Close 除了Dispose 如果接近 是该领域的标准术语 这样做时 重要的是使 Close 实现与Dispose并考虑实施IDisposable Dispose方法明确 因此 按照提
  • MouseDoubleClick 事件不会冒泡

    我的场景经过简化 我有一个包含员工行的 ListView 在每个员工行中 都有 增加 和 减少 按钮来调整他的工资 假设在我的程序中 双击 员工 行意味着 解雇此人 The problem是当我快速单击 增加 时 这会触发 ListView
  • 等于方法实现助手 (C#)

    每次我编写一些数据类时 我通常都会花很多时间编写 IEquatable 实现 我写的最后一堂课是这样的 public class Polygon public Point Vertices get set 实施 IEquatable 是一项
  • 获取RFC返回的嵌套结构的值?

    我是 C 新手 我有 rfc 它以嵌套结构的形式从 SAP 系统返回数据 但是当我使用以下方式获取该数据时 IrfcTable table rfc getTable exporting parameter et customer 它仅返回第
  • 扩展一个类

    编辑回答 虽然我最初的问题并没有完全按照康拉德 鲁道夫提供的答案所解决的方式解释我的需求 但他 无意或有意 基本上为我写了我想写的内容 类本身不会被扩展 但通过使类了解新函数来扩展其功能 这些新函数允许它 类 处理更广泛的问题 我非常感谢您
  • vs2010 c++ 通过debug查看指针内容

    我正在使用 Vs2010 c 处理 2D 数组 我从一维指针开始 并使用操作 如下 class CMatrix void clear public int nRows int nCols short MyMat CMatrix CMatri
  • 如何在PropertyGrid中自定义绘制GridItem?

    我想以与所有者在 ListView 详细信息 和其他控件中绘制项目类似的方式在 PropertyGrid 中绘制属性值 如果将属性声明为 Color 类型 则其值将使用字符串描述旁边的颜色样本来绘制 如果属性是图像类型 则在字符串描述旁边绘
  • 为什么 g++ 在编译的二进制文件中存储类名?

    我注意到如果我跑strings在我编译的程序上g 输出包含它使用的各种类的名称 该程序是用 O3并且没有 g or p 并且当我剥离二进制文件时 类名仍然存在 我想知道为什么有必要g 将此信息存储在二进制文件中 出现的类名似乎都是使用虚函数
  • 如何查明我的字符串是否包含“micro”Unicode 字符?

    我有一个包含实验室数据的 Excel 电子表格 如下所示 g L ppb 我想测试希腊字母 是否存在 如果发现我需要做一些特别的事情 通常 我会写这样的东西 if cell StartsWith matchSequence lt unive
  • 如何正确对齐 WPF GeometryGroup 中的路径?

    我正在使用一个GeometryGroup在圆的中心绘制一个符号 下面的示例显示了我在对此进行实验时的尝试之一 它具有从同一原点 32 32 出发的三条直线

随机推荐

  • 在一组两种可能性中选择唯一的行

    问题本身很简单 但我无法找出在一个查询中完成此任务的解决方案 这是我对问题的 抽象 以便进行更简单的解释 我将保留我最初的解释 但这里有一组示例数据和我期望的结果 好的 这是一些示例数据 我用空行分隔对 Key Col Together t
  • JQuery 表单验证不适用于新创建的元素

    我在使用 Jquery 验证插件时遇到了一些问题 想知道是否有人可以提供帮助 目前 该插件适用于当前页面上的任何表单元素 addRelease validate submitHandler function form form submit
  • 如何在 XSD 中引用全局类型?

    如何实现对 simpleType 的 XSD 内部引用 我遇到了您在下图中看到的错误 XSD
  • Delphi中OnKeyDown的问题

    我正在与德尔福合作 我想跟踪按下了哪个键 我正在使用 TForm 的 KeyDown 事件 它工作正常 但问题是 如果我按小写字母 但它会给出该字母的大写字母 如何识别按下的按键是小写还是大写 如果您想跟踪字母数字键 那么您应该使用KeyP
  • 将 Facebook 登录应用程序与 Facebook 粉丝页面链接有什么优势?

    我正在创建一个电子商务网站 我将支持 FB 登录 我也会有一个FB粉丝专页 在支持 facebook 登录应用程序的同时 可以选择将 FB 页面附加到登录应用程序 App gt app name gt 应用程序详细信息 gt 联系信息 gt
  • iOS静默推送通知已取消

    在我的应用程序中 我使用静默推送通知来定期通信 但我遇到了麻烦 因为我在未启动应用程序时收到的静默推送通知未被处理 操作系统版本为iOS12 我正在使用 FCM 发送推送通知 有人有同样的问题吗 以下是您收到静默推送通知时的控制台日志 10
  • iOS 6 MPMoviePlayerViewController 和 PresentMoviePlayerViewControllerAnimated Rotation

    在以前的 iOS 版本中 我们的视频会自动旋转 但在 iOS 6 中不再是这种情况 我知道 PresentMoviePlayerViewControllerAnimated 以前是设计用于执行此操作的 但是我如何告诉 MPMoviePlay
  • Android:如何检测双 SD 卡[重复]

    这个问题在这里已经有答案了 有什么方法可以识别设备中是否有两张 SD 卡 Edit 我发现目前无法区分内部存储和真正的外部SD卡 在某些设备 例如 Samsung Galaxy Tab 7 英寸 中 系统将内部存储 通常为 16GB 视为外
  • Android:MediaPlayer AUDIOFOCUS_LOSS 和 setOnErrorListener() 问题

    我正在创建一个音乐播放器应用程序 我正在检查我的应用程序是否丢失 AudioFocus 然后播放将停止 但这提出了一个问题 当我播放一首曲目时 然后停止它 然后再次播放一首曲目 switch case AudioManager AUDIOF
  • String.equals() 是如何工作的

    我一直在尝试了解一些 API 方法是如何工作的 下面是 java lang String 类的 equals 方法的片段 有人可以告诉我代码实际上是如何比较两个字符串的吗 我明白了计数的重要性 但是偏移量意味着什么 这些变量如何获取值 就像
  • 从 Wikipedia API 获取名人

    我正在尝试从 Wikipedia API 中获取还活着的人 但我还不知道该怎么做 I found 这个问题这和我的一样 据我所知 唯一的方法是搜索只有birth date参数的人 我实际上该怎么做 例如 如果我想搜索 罗纳尔多 我应该得到所
  • Ionic V5 在 Safari 上出现 Angular 组件问题

    我遇到了 Ionic PWA 应用程序在 Safari 上针对以下 UI 组件的点击问题 离子无线电 离子选择 离子菜单 当您单击单选按钮组件 https ionicframework com docs api radio 1 时 您可以看
  • Oracle 中不带 FROM 子句的选择

    in SQL服务器可以在不引用表的情况下执行 SELECT 就像是 Select 1 2 3 my dummy string As Oracle不允许没有 FROM 的 SELECT 我使用双表进行此类操作 就像是 Select 1 2 3
  • RadioGroup 允许选择多个RadioButton

    我有一个在 XML 中定义的 RadioGroup 它有两个 RadioButton 但是 我需要将标签显示在按钮本身的左侧 标签左对齐 按钮右对齐 为此 我使用了包含 TextView 和 RadioButton 的relativelay
  • 绝对位置元素在静态父级中的行为究竟如何

    我问这个问题是因为昨天我必须设置几个 div 的样式 如下所示thisJSFiddle 示例 对我来说最棘手的部分是定位 div 就从 div 但保持它们顶部对齐 我也想要边界 div 走出它的父div 因此 经过一些研究 我是 CSS 初
  • 如何格式化要使用 arrayWithContentsOfFile 读取的文本文件

    我有几个大的单词列表 我已经将它们加载到代码中 如下所示 NSArray dict3 NSArray alloc initWithObjects abled about above absurd absurdity 但现在它实际上奇怪地导致
  • Actionscript3 阿尔法掩蔽?

    我试图在谷歌地图应用程序上应用聚光灯效果 具体来说 我画了一个跟随鼠标的圆圈 并将其设置为地图上的遮罩 问题是只有圆圈内的地图区域显示出来 我知道这就是蒙版应该看起来的样子 但是有没有办法使圆圈外的区域成为某种半透明 以便其下方的地图也可以
  • 如何在不使用“DisplayNameAttribute”的情况下更改 ViewModel 显示名称?

    我想直接更改 ViewModel 的 某些属性的显示名称 而不使用 DisplayName prop name 这应该发生直接在控制器内部在返回视图之前 或者在 ViewModel 类本身内部 我不想更改视图中的任何内容 也不想使用任何数据
  • 在 $navigateBack 中传递更改后的 props

    我有一个概述页面 人们可以在其中看到结果 他们可以选择通过单击编辑按钮来更改该值 通过单击编辑按钮 您将导航到可以更改值的其他页面 如果您更改了该值 您将返回到概述页面 但我的问题是我传递的道具this navigateBack 概览页面中
  • C++ ifstreamfailbit 和 badbit

    的情况下ifstream在C 中 在什么条件下failbit and badbit标志设置 根据cplusplus com failbit当错误与操作本身的内部逻辑相关时 通常由输入操作设置 因此流上的其他操作也是可能的 尽管badbit通