当前位置: 代码迷 >> C语言 >> 请问:如何用C语言实现从文本文件中读取数据?
  详细解决方案

请问:如何用C语言实现从文本文件中读取数据?

热度:633   发布时间:2008-06-14 16:21:47.0
请问:如何用C语言实现从文本文件中读取数据?
如题,如何用C语言实现从文本文件中读取数据?
注意:不用fscanf()和fprintf()函数,因为我发现用这两个函数读取数据时,一些数据,如:1111.1,2222.2,3333.3等数据读进来会有变动,请高人指点!
搜索更多相关的解决方案: 文本文件中  C语言  数据  函数  fprintf  

----------------解决方案--------------------------------------------------------
请看文件操作
----------------解决方案--------------------------------------------------------
既然你认为标准库中的fscanf()和fprintf()函数有bug,建议你重写库函数,造福所有的c程序员。
----------------解决方案--------------------------------------------------------
楼主你估计是这个用错了吧。。。
----------------解决方案--------------------------------------------------------
我敢保证这个我没有弄错,也请大家仔细校验一下,把我帖子里面的数字认真的尝试一下,我可以说一下道理,因为计算机是采用二进制存储,所以它在存储小数点之后,末尾数字,只要不是125,25,375,……之类的数,均会寻找一下,离真实数字效为接近的来代替,换句话说,如果,你读取的数是3.125,7.5,等之类的数字的话,就不会出错了。
下面图片为证,注意,文本里的6个数字分别为:1111.1,2222.2,3333.3,1111.125,2222.25,3333.375
请注意输出结果:
请高人指点,如何避免该问题的发生!
----------------解决方案--------------------------------------------------------
提示: 作者被禁止或删除 内容自动屏蔽
2008-06-14 09:18:25
fantasy_spz

等 级:新手上路
帖 子:55
专家分:0
注 册:2006-8-21
  得分:0 
请注意输出结果为:1111.099976,2222.199951,3333.300049,1111.125,2222.25,3333.375
显然前三个结果有偏差!!!!!!!!!!!!!
----------------解决方案--------------------------------------------------------
提示: 作者被禁止或删除 内容自动屏蔽
2008-06-14 09:28:03
界水乘风
该用户已被删除
  得分:0 
提示: 作者被禁止或删除 内容自动屏蔽
2008-06-14 09:45:45
fantasy_spz

等 级:新手上路
帖 子:55
专家分:0
注 册:2006-8-21
  得分:0 
谢谢楼上指导,但我从来都没有“怪过函数库”,我只想知道,怎样才可以弄成“原数结果”,而没有丝毫的改动,不知能否实现!
因为我真正要读的是很大的数据,而每个数据的小数点后的位数是未知的,数据的大小也是未知的,所以我只想得到原封不动的数据!
----------------解决方案--------------------------------------------------------