printf将输出内容先放入缓冲区,然后缓冲区满足一定条件后,再输出到屏幕。
缓冲区需要满足的条件:
- 使用fflush(stdout)强制刷新。
- 缓冲区已满。
- scanf()要在缓冲区里取数据时会先将缓冲区刷新。
- \n,\r进入缓冲区时。
- 线程结束的时候,如果该线程里也有printf(…);
- 程序结束时。
本文详细介绍了printf函数如何通过缓冲机制来提高输出效率。当遇到特定条件时,如使用fflush(stdout)强制刷新、缓冲区已满、进行输入操作前、遇到特定字符(如
,
)、线程或程序结束时,缓冲区内的内容会被刷新到屏幕。
printf将输出内容先放入缓冲区,然后缓冲区满足一定条件后,再输出到屏幕。
缓冲区需要满足的条件:
1682
1万+
2964
1880

被折叠的 条评论
为什么被折叠?
