阅读量:0
fflush()
是一个 C 语言库函数,用于将缓冲区的内容刷新到文件或流中
在程序中使用 printf()
或 putchar()
等函数时,输出通常会被存储在缓冲区,然后在适当的时候(例如缓冲区满时或遇到换行符时)将其刷新到标准输出(通常是屏幕)。这种机制可以提高 I/O 性能,但有时可能导致输出顺序不符合预期。
fflush(stdout)
可以确保缓冲区中的所有内容都被立即刷新到标准输出。这在调试程序或需要实时显示输出的场景中非常有用。
下面是一个简单的示例:
#include<stdio.h> int main() { printf("Hello, "); fflush(stdout); // 立即将 "Hello, " 刷新到标准输出 sleep(1); // 等待 1 秒 printf("world!\n"); return 0; }
在这个示例中,fflush(stdout)
确保 "Hello, " 立即显示在屏幕上,而不是等待整个程序执行完毕。