while(!feof(fp))跳不出循环

Rover__ Rover__ 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
while(!feof(fp))
{
for(i=0;fread(&Book[i],sizeof(struct Book),1,fp)!=0;i++)
{
if(strlen(Book[i].name)!=0)
{

printf("\t1.书名:%s\n",Book[i].name);
printf("\t2.主编:%s\n",Book[i].writer);
printf("\t3.出版社:%s\n",Book[i].press);
printf("\t4.出版年:%s\n",Book[i].year);
printf("\t5.版次:%s\n",Book[i].edition);
printf("\t6.ISBN书号: %s\n",Book[i].isbn);
printf("\t7.定价:%d\n",Book[i].price);
printf("\t8.拥有本数:%d\n",Book[i].all);
printf("\t9.借出本数:%d\n",Book[i].borrow);
printf("\t10.现余本数:%d\n\n",Book[i].now);
}
}
}


程序执行这段时跳不出循环,while(!feof(fp))不是文件指针到达末尾时就会跳出循环了吗,fread函数在for里面判断时是会被执行一次的吗?
...全文

相关推荐

评论 10
收藏 已收藏
分享
返回顶部
Rover__
C语言 70,039 成员 243,237 内容