Перепишите программу, чтобы отличать EOF от ошибки для функции Getchar(). Другими словами, getchar() возвращает как во время ошибки, так и в конце файла EOF, нужно различать это, ввод не должен быть через FILE STREAM и обрабатывать ошибки функции putchar().
#include <stdio.h>
int main() {
long nc;
nc = 0;
while (getchar() != EOF)
++nc;
printf ("%ld\n", nc);
}
feof
, либоferror
после возвратаEOF
. - person HolyBlackCat   schedule 15.07.2020stdin
вместо файла. - person HolyBlackCat   schedule 15.07.2020stdin
в качестве аргументаFILE*
, что неочевидно из любой цели дублирования . - person Adrian Mole   schedule 15.07.2020