[ 专栏目录首页:【专栏必读】王道考研408操作系统+Linux系统编程万字笔记、题目题型总结、注意事项、目录导航和思维导图
文章目录
(1)全缓冲和行缓冲
一般来说,C库函数写入显示器属于行缓冲,也就是只要遇到一些标记,比如说’\n’就会立即刷新出去
所以上面的例子中如果不关闭1号文件,并且每个字符串后面都显式的加了\n,那么现象就是所有的内容都被打印了
C库函数写入文件时是全缓冲,也就是写满缓冲区才能刷新,如果发生重定向时(关闭1号文件)数据的缓冲方式就会由行缓冲变为全缓冲
所以下面的例子中,关闭1号文件,此时内容被重定向到了文件当中,printf
和fprintf
都没有输出任何东西