首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 操作系统 > UNIXLINUX >

fread函数使用出错解决办法

2012-03-24 
fread函数使用出错最近在使用fread时发现老是读不到数据,feof返回1,即读到了结尾,但实际上没有,因为刚刚re

fread函数使用出错
最近在使用fread时发现老是读不到数据,feof返回1,即读到了结尾,但实际上没有,因为刚刚rewind(fd)过,
只是读的文件是动态创建的,即creat创建后写入了数据,最后用fread读出来就出错了,有哪位大侠指点下,不胜感激!
代码:
  creat(.....)
  fopen(....)
  ............

rewind(fd);
memset(t_buff,0,60);
len=fread(t_buff,60,1,fd);
if(len<=0)
{
i=feof(fd);
printf("----------------err open------001--i=%d--------err=%x.\n",i,errno);
break;
}
打印结果:i=1,errno=2


[解决办法]

探讨
最近在使用fread时发现老是读不到数据,feof返回1,即读到了结尾,但实际上没有,因为刚刚rewind(fd)过,
只是读的文件是动态创建的,即creat创建后写入了数据,最后用fread读出来就出错了,有哪位大侠指点下,不胜感激!
代码:
creat(.....)
fopen(....)
……

[解决办法]
fopen 的参数都是什么?
[解决办法]
是不是 fopen 以只写方式打开 ?
导致后续的fread出错?
[解决办法]
fread之前先调用一下flush试试。

热点排行