关于文件末尾的问题
程序代码:
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()就可以判断得到有没有到文件末尾