Я написал две программы на C для подсчета символов и вывода значения.
Один использует цикл while, а другой - для. При компиляции не сообщается об ошибках, но ничего не печатается.
Вот код, использующий , а :
#include <stdio.h>
/* count characters and input using while */
main()
{
long nc;
nc = 0;
while (getchar() != EOF)
++nc;
printf("%ld\n", nc);
}
А вот код, использующий для :
#include <stdio.h>
/* count characters and input using for */
main()
{
long nc;
for (nc = 0; getchar() != EOF; ++nc)
;
printf("%ld\n", nc);
}
И скомпилируйте, и запустите.
Когда я набираю ввод и нажимаю ввод, печатается пустой символ новой строки. Когда я нажимаю клавишу ввода, ничего не вводя, снова печатается пустой символ новой строки. Я думаю, что это должно как минимум напечатать ноль.