以下是引用yu965634383在2017-9-3 14:51:01的发言:
只要用feof函数判断文件结尾,最后输出就会多一个
while (!feof (fp))
{
fread (&a, sizeof (struct person) , 1 , fp);
printf ("%s " , a.name);
for (i = 0; i < 10; i++)
printf ("%d" , a.phone);
printf ("%d " , a.phone);
printf (" %s\n" , a.relation);
}
最后的一个会重复是什么原因啊
只要用feof函数判断文件结尾,最后输出就会多一个
while (!feof (fp))
{
fread (&a, sizeof (struct person) , 1 , fp);
printf ("%s " , a.name);
for (i = 0; i < 10; i++)
printf ("%d" , a.phone);
printf ("%d " , a.phone);
printf (" %s\n" , a.relation);
}
最后的一个会重复是什么原因啊
试试这样用feof()
fread (&a, sizeof (struct person) , 1 , fp);
while (!feof (fp))
{
printf ("%s " , a.name);
for (i = 0; i < 10; i++)
printf ("%d" , a.phone);
printf ("%d " , a.phone);
printf (" %s\n" , a.relation);
fread (&a, sizeof (struct person) , 1 , fp);
}