快速获取另一个程序的输出作为输入

快速获取另一个程序的输出作为输入,第1张

快速获取另一个程序的输出作为输入

只需将stdout设置为在C程序的开始进行行缓冲(在执行任何输出之前),如下所示:

#include <stdio.h>setvbuf(stdout, NULL, _IOLBF, 0);

要么

#include <stdio.h>setlinebuf(stdout);

两种都可以在Linux上运行,但是

setvbuf
属于C标准,因此它将在更多系统上运行。

默认情况下,stdout将被块缓冲用于管道或文件,或行被缓冲用于终端。由于在这种情况下stdout是管道,因此默认值将为块缓冲。如果是块缓冲的,则当缓冲区已满或调用时,将刷新该缓冲区

fflush(stdout)
。如果它是行缓冲的,那么它将在每行之后自动刷新。



欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zaji/5018928.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-11-15
下一篇2022-11-15

发表评论

登录后才能评论

评论列表(0条)

    保存