0

在 shell 上,可以使用管道将输出提供给另一个程序。

例如 :::

ps axu | grep someprocess

现在我想编写一个也接受这些管道的 C++ 程序。

我找到了类似的解决方案。

using namespace std;

int main()
{
    string mypipe;
    if(cin);
    {
        cin >> mypipe;
        cout << mypipe << endl;
    }
    return 0;
}

现在我想要,我可以使用反引号调用我的函数。

例如,我正在使用这样的 shell 构造。

./myprog.bin `./otherprog.bin someparameter`

如何使用参数将 otherprog.bin 生成的输出读取到我的程序中?

4

1 回答 1

2

将命令行参数添加到 main 函数,如下所示:

int main( int argc, const char* argv[] )

argc是参数计数,argv包含它们的表。

于 2012-11-22T10:13:24.167 回答