【精华】关于C中的输入输出缓冲-buffering in standard streams

来源:互联网 发布:silver是什么软件 编辑:程序博客网 时间:2024/06/11 03:13

英文解释buffering in standard streams  

http://www.pixelbeat.org/programming/stdio_buffering/


键盘缓冲--- 键盘Bios 和键盘管理---操作系统启动后操作系统接管

操作系统把各种设备看成文件
DOS ,Windows, Unix ,把键盘,显示器,鼠标等称为终端;
而键盘,显示器组合称为控制台con。
C,C++ 流把键盘,显示器组合看作文件,并分成3个标准文件,分别是stdin,stdout,stderr
c++ 对应的是cin,cout,cerr 等流对象。


stdin,cin主要是键盘,显示器会回显键盘输入。
stdout,cout 是显示器
stderr,cerr 也是显示器
这两个文件在重定向时,就会不同了,不然都是输出到显示器。
所以这里至少有两个输入缓冲
1一个键盘,硬件缓冲,大约16个还是多少个键值(字符)
另一个是流缓冲。这是流式文件的缓冲。


其实缓冲格式和控制台状态有关,
1种称为 RAW 控制台,每个输入(键)一个缓冲,输出也可以满屏幕输出。


另1种称为行模式控制台,每次输入回车才会缓冲到行缓冲区;
每次输出也要等到回车才会输出,不然数据放在缓冲区中。


至于实际有多少缓冲,要看一些比较经典的图书才能知道。


不会少于2个就是了。
0 0
原创粉丝点击