标题:关于文件末尾的问题
只看楼主
陆嘉文
Rank: 1
来 自:江西
等 级:新手上路
帖 子:96
专家分:6
注 册:2011-11-10
结帖率:76.92%
已结贴  问题点数:14 回复次数:1 
关于文件末尾的问题
程序代码:
printf(FORMATS,"姓名","学号","数学","语文","英语","平均分");
while(!feof(fp)){
   flag=fread(&stu,sizeof(struct Student),1,fp);
   if(flag!=1){
    if(feof(fp)){
     fclose(fp);
     printf("在这里");
     exit(0);
    }
    printf("file read error!");
   }
   printf(FORMAT,stu.name,stu.num
     ,stu.score[0],stu.score[1],stu.score[2],
     stu.average);
  printf("结束标志:%d\n",feof(fp));

 }

 fclose(fp);
#define FORMAT "%-12s%-12d%-12.1f%-12.1f%-12.1f%-12.1f\n"

 #define FORMATS "%-12s%-12s%-12s%-12s%-12s%-12s\n\n"

为什么我使用feof()去判断文件是不是达到末尾的时候

 feof(fp)返回的一直是0 啊,但是如果我用fgetc()就可以判断得到有没有到文件末尾 
2015-08-22 10:54
诸葛欧阳
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:流年
等 级:贵宾
威 望:82
帖 子:2790
专家分:14619
注 册:2014-10-16
得分:14 
这个函数不到文件末尾才返回0

一片落叶掉进了回忆的流年。
2015-08-22 12:47



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-456653-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 1.608695 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved