0

我希望我的程序能够读取另一个应用程序生成的标准输出。我知道我可以popen用来执行此操作并用于fread读取该输出。

你知道是否可以使用read(并且可能open)?我正在使用 C/C++ 在 LINUX 中工作

4

1 回答 1

2

您可以read()通过调用int fd = fileno(fp)从. 但请注意,您不能将 call和!FILE *fppopen()read()fread()

编辑

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

于 2013-07-31T09:30:40.180 回答