在**portable C**中,如何启动连接命令的命令';s stdin到发射器';什么是标准?

在**portable C**中,如何启动连接命令的命令';s stdin到发射器';什么是标准?,c,ipc,pipe,portability,C,Ipc,Pipe,Portability,在C程序(p1)中,如何启动动态构造的命令(及其参数),从p1的标准输出读取其标准输入 请注意: 此标准输出以外的方法--> 标准管道也可以提供 它是可跨窗口和远程移动的 Linux >我不能使用C++、java、perl、Ruby, Python等 此外,它的Windows版本是否具有MinGW依赖项 重新打开:下面的问题回答了Linux的问题,但这个问题需要一个可移植的方法。 老实说,我并不100%清楚你到底想达到什么目的 但据我所知,你可以看看 你可以这样做 bp::child cs

在C程序(p1)中,如何启动动态构造的命令(及其参数),从p1的标准输出读取其标准输入

请注意:

  • 此标准输出以外的方法--> 标准管道也可以提供 它是可跨窗口和远程移动的 Linux

  • <> >我不能使用C++、java、perl、Ruby, Python等

    此外,它的Windows版本是否具有MinGW依赖项

    重新打开:下面的问题回答了Linux的问题,但这个问题需要一个可移植的方法。

    老实说,我并不100%清楚你到底想达到什么目的

    但据我所知,你可以看看

    你可以这样做

     bp::child cs = p.start();
     bp::postream& os = cs.get_stdin();
    
    然后将操作系统用作任何流,在子进程的标准输入中转储内容


    无论如何,通过库w.r.t.管道重定向和链接可以实现很多功能。

    链接的anser(您拒绝)指的是POSIX管道。POSIX是C的一个扩展,它添加了标准C中缺少的功能。POSIX管道就是这种功能的一个很好的例子:它们被添加到POSIX中是因为标准C没有该功能。

    Microsoft C运行时将其称为而不是,但它在Windows中似乎具有相同的功能(对于控制台应用程序)和Linux。

    glib库是用C编写的,其实现在Linux和Windows上都经过了良好的测试。将为您提供有关如何启动新进程的信息,并使用g\u spawn\u async\u with_pipes调用将其挂接到stdin和stdout句柄。

    Hmm,boost。一只800磅重的大猩猩,我需要和它联系并握手。我仍然会留意所有的轻量级、C响应。不过谢谢你。(注意,我现在从条件中删除C++)注意,我只希望C解决方案。(很抱歉不方便!)