我有一个程序将实验计数作为命令字符串参数并输出 float 序列。 例子: im_7.exe 10 10.41 13.33 8.806 14.95 15.55 13.88 10月13日 12.22 9.09 10.45
所以,我需要在我的程序中调用这个程序并分析这个数字序列。
最佳答案
如果您使用的是 Windows,那么您需要执行以下操作
- 使用 Windows 的 CreatePipe api 创建一个 Pipe1。使用此管道从子进程的 STDOUT 读取数据。
- 以相同的方式创建一个 Pipe2,并使用该管道将数据写入子进程的 STDIN。
- 创建子进程并在启动信息中提供这些句柄并从父进程继承句柄。同时传递 cmd 行参数。
- 关闭Pipe1的写端和Pipe2的读端。
- 在您的情况下,您没有向子进程输入中写入任何内容。您可以直接从 Pipe1 读取子进程输出中的数据。
有关示例,请查看以下链接。 http://msdn.microsoft.com/en-us/library/ms682499%28VS.85%29.aspx
希望这就是您要找的。p>
关于c++ - 在 C++ 中,如何获取一个程序的输出并将其用作另一个程序的输入?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6058654/