C语言学习笔记之输出缓冲

在c语言中经常用到输出函数printf,当我们像往常一样在输出函数中输入我们的想要的输出的东西后加\n换行

验证结果如我们输出的一样

 如果我们在后面加入死循环会不会出现这些语句呢

 

 结果卡死了,可还是输出了想要输出的语句

如果我把\n去掉呢

 结果啥都没有,语句也出不来

这时我们知道了,\n不止是换行,在printf中缩写如的东西会存储在缓冲区里,碰到换行(\n) 才清空缓冲区,把里面的语句释放出来,或者等到函数结束了 清空缓冲区才能释放,这个大家可以用sleep定几秒在有加\n和没有加的后面,就可发现有\n立刻输出,没有的只能等整个main函数结束后才能输出。

输出缓冲:
1. 碰到换行(\n) 才清空缓冲区
2. 函数结束了 清空缓冲区
3. 缓冲区 满了 就刷新出来
4. 用函数释放 fflush(stdout)

猜你喜欢

转载自www.cnblogs.com/xzc943/p/13374109.html