在Perl中,我可以输入:
$|++;
并且打印到STDOUT的所有内容都会自动进行fflush()。
C中是否有等价物?换句话说,是否有某种方法可以告诉stdio在每个printf()之后自动将stdout进行冲洗,即自动冲洗stderr的方法?
在Perl中,我可以输入:$ | ++;并且打印到STDOUT的所有内容都会自动进行fflush()处理。 C中是否有等效项?换句话说,有什么方法可以告诉stdio自动刷新...
尝试setvbuf(stdout, NULL, _IONBF, 0)
。它将stdout
更改为无缓冲(_IONBF
)模式。
我还没有这样做,但是_IOLBF
是正确的答案。
看看setbuf()和setvbuf()。