Chinaunix首页 | 论坛 | 博客
  • 博客访问: 57729
  • 博文数量: 32
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 255
  • 用 户 组: 普通用户
  • 注册时间: 2016-12-02 09:11
文章分类

全部博文(32)

文章存档

2017年(21)

2016年(11)

我的朋友

分类: C/C++

2016-12-29 16:06:48

ifstream中read()与readsome()的区别。
项目中出现一个很有趣的Bug,程序读入一个特定的二进制文件中的数据,进行一些处理,可是每当这个文件的数据量超过某个特定值(这个值不大,400K左右)的时候运行结果就出错。
追查Bug是程序员的一项基本功,也是最能体现实力的地方之一。这个Bug最终在3天追捕之后被一个同事抓获。原因确是因为我写的读取文件的模块中使用了fsream::readsome()函数。改成fsream::read()就可以了。
惊悸之余,特地比较详细的看了关于流的解释。
首先,fstream是basic_fstream模板类关于char的一个实例。
typedef basic_fstream fstream;
basic_fstream的由basic_iostream派生的
template
阅读(798) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~