【发布时间】:2016-01-15 15:32:51
【问题描述】:
考虑以下代码:
while ((c = getchar()) != EOF) // c is of char type
putchar(c);
getchar 从 键盘检索一个char。但是当我观察它的执行时,注意到putchar 的输出直到getchar 遇到ENTER key 才会发生。所以getchar 直到ENTER 键才真正检索整个字符串。
实际输出:
Hello
Hello
想要的输出:
H
H
E
E
L
L
O
O
【问题讨论】:
-
我想你会喜欢这篇文章(及其相关文章):stackoverflow.com/questions/13104460/… 你的“H E E L O O”示例是关于它如何工作的合理理论。如答案中所述,缓冲可以防止这种交错。事实证明,您可以设置一些选项,这些选项应该会给您“H H E L L O O”。在您了解它们之前,“原始”与“缓冲”的概念词并不明显。快乐的研究。 :-)
-
感谢您的链接。