如何解决如何在 c 中使用 ffllush(stdout)?
我知道 fflush(stdin)
根据标准,这是未定义的行为。但是当涉及到 stdout
时,就没有这样的限制。我做了谷歌以获得使用 stdout
作为 fflush
的参数的概念,但我无法得到它。
有人可以用一个简单的例子详细说明以 fflush
作为参数的 stdout
函数吗?
解决方法
在打印时(例如 printf
),输出被放入缓冲区,并且在显示换行符之前可能不会写入控制台。为确保缓冲区中的所有内容都写入控制台,可以使用 fflush(stdout)
。
一个例子是显示某个进程的进度:
for(int i = 0; i < 100; i++)
{
<...calculation...>
printf("."); // Print a dot after each iteration to show progress
fflush(stdout); // The dot may be buffered. This ensures that it is displayed immediately
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。