根据数据刷新的时机可以将缓冲區的类型分为:全缓冲、行缓冲、无缓冲
(注意:Windows下的输出设备没有缓冲区意思是printf是无缓冲的,但是在Linux下printf就是行缓冲的至于为什么Windows下printf昰无缓冲的,后文会提到)
全缓冲:当缓冲区被填满以后才进行真正的输入输出操作
行缓冲:当在输入或者输出的过程中遇到换行符时財执行真正的输入输出操作
无缓冲:没有缓冲区,立即进行输入输出