#include <stdio.h>
int main(void)
{
int c;
c = getchar();
putchar(c);
c = getchar();
putchar(c);
c = getchar();
putchar(c);
return 0;
}
我想知道这是为什么叫三声与只输入一次线工作的功能。 有些人解释说,我们在这种情况下,标准输入缓冲区的工作,那是一块内存。 我想读什么。 你能告诉我一些资源?
这是您的终端(命令行窗口)的一个特征。
默认情况下,终端将收集来自用户的输入,直到他按下Enter键/返回。 然后,整条生产线推到你的程序的输入文件流( stdin
,也就是,因为你使用<stdio.h>
,而不是<iostream>
没有cin
参与)。
因为你的程序没有处理解释所有的键盘事件(例如:按Backspace键时删除字母),这非常有用。 它要处理的键盘本身的程序可以禁用这个默认的输入模式。 我认为,谷歌相关的关键字是terminfo
或termcap
。
具体关于你的问题,一行输入好三个getchar()
如果它包含三个字符要求。 如果你只输入一个字符,程序应该等待后续getchar()
呼吁更多的投入。