Cześć.
Mam program, który wczytuje ze standardowego wejścia znaki, za pomocą getchar():
#include <stdio.h>
main()
{
int tablica_std[300];
int i=0;
while((tablica_std[i])!=EOF)
{
tablica_std[i]=getchar();
printf("%c, %d, %d\n", tablica_std[i], i, tablica_std[i]);
if((tablica_std[i])!=EOF) { i++; } else { printf("\nKoniec");}
}
printf("%d", i);
return 0;
}
Gdy wczytuje plik ze 125 znakami, program zwraca mi błędną ilość znaków. Zauważyłem, że zależy to od wielkości tablicy, np dla tablicy 100 elementowej zwraca mi 60 znaków, dla tablicy 300 elementowej 20 znaków, a dla tablicy 500 elementowej zwraca 125 znaków (czyli poprawnie). Czym jest spowodowany ten błąd?