【发布时间】:2013-03-29 08:25:17
【问题描述】:
#include <stdio.h>
int main()
{
FILE* f=fopen("book2.txt","r");
char a[200];
while(!feof(f))
{
fscanf(f,"%s",a);
printf("%s ",a);
printf("%d\n",ftell(f));
}
fclose(f);
return 0;
}
我有上面的代码。 book2.txt 包含“abcdef abcdef”,光标移动到换行符(即:abcdef abcdef\n)。我得到以下结果。
abcdef 6
abcdef 13
abcdef 19
我希望得到
abcdef 6
abcdef 13
15
我做错了什么?
【问题讨论】:
-
feof可能不像你想象的那样工作。