C 将管道读为字符串

C++ Read Pipe into String

本文关键字:字符串 管道      更新时间:2023-10-16

我正在编写执行shell命令的C 程序。我正在使用popen()函数来运行命令。我希望我的exec函数返回std::string,但我不知道如何从FILE读取到字符串。有没有办法在不阅读char[]的情况下进行此操作,然后将其转换为字符串?如果有很多最有效的?

是不可能的。popen()功能将指针返回到FILE。您无法将FILE直接读取到std::string中。但是,您可以将char*转换为std::string,这在您的情况下似乎是最好的解决方案。

听起来您可以使用std::ifstream-> http://www.cplusplus.com/doc/tutorial/files/