Цитата
после чего всё равно надо ENTER, так как ввод построчно-буферизованный
А вот тут возникли дополнительные вопросы.
Например здесь:
Код
#include <stdio.h>
int main(void)
{
int ch;
while ((ch=getchar())!=EOF)
{
putchar(ch);
}
return 0;
}
у меня построчно-буферизированый ввод. Нажму Enter - введённые символы передаются программе.
А вот в этой программе он не построчно-буферизированый:
CODE
#include <stdio.h>
int main(void)
{
long newline, tab, space;
int c,chars;
chars=0;
newline=0;
tab=0;
space=0;
while((c=getchar())!=EOF)
{
++chars;
if(c==10)
++newline;
if(c==9)
++tab;
if(c==32)
++space;
}
printf("%d characters\n",chars);
printf("%ld new lines\n", newline);
printf("%ld tabs\n",tab);
printf("%ld spaces\n", space);
return 0;
}
Нажму Enter - у меня происходит переход на новую строку.
И лишь после имитации EOF - введённые символы передаются на обработку программе. Почему в первой программе построчно-буфферизированый ввод, а во второй - нет?