首先来看一段代码先:
int main(void)
char ch;
while((ch=getchar())!='#')
putchar(ch);
return 0;
代码表示了当用户输入不是#这个字符时,程序将一直打印出来你写的字符。
当用户按下Enter键程序才可以使用用户输入的字符,用户输入的字符被收集并储存在一个被称为缓冲区的临时储存区。
我们可以把它解释成为一个缓冲输入【缓冲分为两类】①完全缓冲I/O;②行缓冲I/O;
【二者的区别】①前者当缓冲区被填满时才刷新缓冲区,通常出现在文件输入中;
②后者指的是出现换行符刷新缓冲区,例如键盘输入通常是行缓冲输入,so在用户按下Enter键后才刷新缓冲区。
注释:I/O 指的是输入输出函数!!!所有系统通用的标准的输入输出函数,移植性高。
反之:无缓冲输入指的是当用户按下一个键就执行相应的指令,无论是不是有无缓冲输入都有其用武之地!
上面的代码说道了,用户输入#字符将终