通过读取功能而不是fread读取标准输出

reading standard output via read function instead of fread

本文关键字:读取 fread 标准输出 功能      更新时间:2023-10-16

我希望我的程序读取另一个应用程序生成的标准输出。我知道我可以使用popen来实现这一点,并使用fread来读取输出。

你知道是否可以使用read(可能还有open)吗?我在LINUX中使用C/C++

您可以通过为从popen()获得的FILE *fp调用int fd = fileno(fp)来获得read()的文件描述符。但请注意,不能混用调用read()fread()

编辑

如果你想避免使用popen(),你必须像这里一样使用pipe()fork()exec..()dup2()