Необходимо узнать количество слов в файле. Язык программирования - Си.
Написал следующую функцию:
int CountWords(char filename[])
{ int c;
int wcount=0, t=0;
FILE *input;
input=fopen(filename, "r");
if(input==NULL)
fprintf(stderr, "Ошибка при открытии файла %s\n", filename);
while(!feof(input))
{
c=fgetc(input);
if(isspace(c))
t=1;
else
if(t==1)
{
wcount++;
t=0;
}
}
if(fclose(input)==-1)
fprintf(stderr, "Ошибка при закрытии файла %s\n", filename);
return wcount;
}
При тестировании функции заметил, что ее результат не сходится с результатом функции если файл находится в каталоге usr.
wc filename -w
Подскажите, что не так в моей функции и как исправить данную проблему?