工作中编写demo,解析配置文件,为了便捷, 使用了ifstream函数, 通常我都是这么用的,一般也很少出错, 但是这次确出错了,找了很久才排查出问题.

原来是配置文件写错了.特此记录一下心得.

快速发现ifstream出错问题的方法是:

在出错时输出错误原因,

为此需要添加如下头文件,并使用下面类似的代码

#include <errno.h>
  #include <string.h>

参考文献

[1].http://stackoverflow.com/questions/17337602/how-to-get-error-message-when-ifstream-open-fails

[2].http://www.cnblogs.com/kevinGaoblog/archive/2012/07/20/2601236.html

在使用stl中的ifstream出错时如何快速排错?相关推荐

  1. Java向数据库中插入数据出错时怎么避免插入错误数据

    Java向数据库中插入数据出错时怎么避免插入错误数据 对于初学者,向数据库写数据时,当程序输错,会有错误的数据写入了数据库,这是可以用捕获异常回滚的方法避免这种情况的发生 代码如下: /** 完成增删 ...

  2. 在ASP.NET MVC中使用Log4Net记录异常日志,出错时导向到静态页

    本篇体验在ASP.NET MVC 4中使用Log4Net记录日志. 通过NuGet安装Log4Net. 需求是:当出错时导向到Error.html静态页面,Log4Net记录错误信息. 大致的思路是: ...

  3. 【报错笔记】在eclipse中做Spring项目时,创建Spring容器时老是出错

    在eclipse中做Spring项目时,创建Spring容器时老是出错 写完这句代码无法导包,最后发现包导错了,我原来导的4.3.9的包,而且是后缀为其他的包,而且对JDK也有要求,我又下载了5.0. ...

  4. C++中STL中的大、小、相等概念

    1.STL的大.小.相等概念 STL中关联容器内部的元素是排序的.STL中的许多算法也涉及排序.查找.这些容器和算法都需要对元素进行比较,有的比较是否相等,有的比较元素大小. 在STL中,默认情况下, ...

  5. 理解stl中的erase

    vector<Path *> vec; vec.push_back(new Path); vec.erase(vec.begin()); vector<Path > vec; ...

  6. STL中“大”、“小”和“相等”的概念

    STL 中关联容器内部的元素是排序的.STL 中的许多算法也涉及排序.查找.这些容器和算法都需要对元素进行比较,有的比较是否相等,有的比较元素大小. 在 STL 中,默认情况下,比较大小是通过< ...

  7. C++ STL中Map的按Key排序和按Value排序

    map是用来存放<key, value>键值对的数据结构,可以很方便快速的根据key查到相应的value.假如存储学生和其成绩(假定不存在重名,当然可以对重名加以区分),我们用map来进行 ...

  8. STL中的nth_element()方法的使用

    STL中的nth_element()方法的使用 通过调用nth_element(start, start+n, end) 方法可以使第n大元素处于第n位置(从0开始,其位置是下标为 n的元素),并且比 ...

  9. C++ STL中的优先队列(priority_queue)使用

    原文:https://www.cnblogs.com/cielosun/p/5654595.html 今天讲一讲优先队列(priority_queue),实际上,它的本质就是一个heap,我从STL中 ...

最新文章

  1. 自学python爬虫要多久-Python爬虫要学多久,给初学编程者的建议
  2. 【错误记录】Android Studio 配置 AspectJ 报错 ( all buildscript {} blocks must appear before any plugins {} )
  3. python期末设计作品_期末作品检查
  4. web.xml.jsf_使用JSF 2.0可以更轻松地进行多字段验证
  5. 软件开发重要性_在软件开发中考虑时间的重要性
  6. 美团点评移动网络优化实践
  7. linux二进制数据16进制数据转换,[轉]16进制字符文本/二进制文件迷你互转器
  8. UINavigationBar的系统渲染方式
  9. Linux TCP/IP网络协议栈:IP协议源码分析
  10. mysql安装及远程连接_Mysql安装、使用、配置远程连接,看这一篇就够了!
  11. Linux串口驱动分析初始化
  12. c语言 乱序字符,C语言中两种结构体成员初始化方式:顺序和乱序
  13. 【2022最新Java面试宝典】—— SpringBoot面试题(44道含答案)
  14. cass等距离等分线段的命令键_南方cass快捷命令
  15. @POST和GET的区别?
  16. 图像坐标球面投影_晶体的球面坐标与球面投影
  17. 计算机科学家的名言警句,【实用】励志的格言70句
  18. mac日历显示国家节假日及补班日期
  19. JMeter测试多用户登录
  20. oracle-ORA的原理

热门文章

  1. linux内核开机显示企鹅logo,批改linux内核kernel开机logo(小企鹅)
  2. express中放置静态文件
  3. [leetcode] Minimum Path Sum
  4. 一个“复制/删除”方式的滚动
  5. ASP.NET 4.0: 请求验证模式变化导致ValidateRequest=false失效
  6. java map 输入 查询 修改_Mybatis增删改查mapper文件写法详解
  7. oracle hot patch david,Oracle EBS使用adpatch工具打patch过程(hotpatch mode)
  8. mysql注册数据库_基于mysql数据库的注册
  9. linux 编译opencl,OpenCL编译环境配置(VS+Nvidia)
  10. Python OpenCV GrabCut进行前景分割和提取