Próbuję zrozumieć getchar ()! = EOF

Czytam Język programowania C i do tej pory wszystko zrozumiałem. Jednak kiedy natknąłem się nagetchar() iputchar(), Nie zrozumiałem, jaki jest ich użytek, a dokładniej, co robi poniższy kod.

main()
{
    int c;
    while ((c = getchar()) != EOF)
       putchar(c);
}

Rozumiemmain() funkcja, deklaracja liczby całkowitejc iwhile pętla. Jednak jestem zdezorientowany co do stanu wewnątrzwhile pętla. Co to jest wejście w tym kodzie C i jakie jest wyjście.

Przepraszam, jeśli to podstawowe i głupie pytanie, ale szukam prostego wyjaśnienia, zanim przejdę do książki i będę bardziej zdezorientowany.

questionAnswers(8)

yourAnswerToTheQuestion