while ((c = getchar ())! = EOF) Не завершается

читалЯзык программирования C " и я добрался до этой части входов и выходов.

Я читал другие темы о том, что консоль нераспознать ввод какEOF, Так что я должен использоватьCTRL + Z в Windows илиCTRL + D в Unix (ни один из них не работает для меня).

Я также читал, что другие люди спрашивали то же самое, говоря, что они могут заставить его работать, проблема в их кодах была в синтаксисе, а не в том, что программа не завершалась.

Есть ли другое решение?

Это код:

#include 
main()
{
    int nb, nl, nt, c;
    nb = 0;
    nl = 0;
    nt = 0;
    while ((c = getchar()) != '\n'){
        if (c == ' ')
            ++nb;
        else if (c == '\n')
            ++nl;
        else if (c == '\t')
            ++nt;
    }
    printf("Input has %d blanks, %d tabs, and %d newlines\n", nb, nt, nl);
}

Изменить:\n должен был быть EOF, я бездельничал, прежде чем отправил, и я забыл, что изменил это: P

Это неЯ не работал с EOF, я просто пропустил этот.

Ответы на вопрос(8)

Ваш ответ на вопрос