Я на компьютере с Fedora 15 и у меня есть простой код, который выглядит следующим образом
#include <stdio.h>
#include <stdlib.h>
int main()
{
int x[50], y[50];
int i;
FILE *f_in = fopen("readtest.dat","r");
if (f_in == NULL) printf("No file...\n");
else
{
i = 0;
while (!feof(f_in))
{
fscanf(f_in,"%d %d",&x[i],&y[i]);
printf("%d %d\n", x[i], y[i]);
i++;
}
printf("I've read %d data.\n", i);
}
return 0;
}
Файл, который нужно прочитать, это
1 1
2 2
3 3
4 4
5 5
Но я неНе знаю, почему вывод выглядит так.
1 1
2 2
3 3
4 4
5 5
1250259108 1250140145
I've read 6 data.
Я думал, что оставил пустую новую строку в файле, но я не сделал.Я дважды проверил файл с помощью gedit и vim, и пустых строк не было найдено.Почему я читаю эту несуществующую строку?