如何将变量参数传递给exe?

zia*_*zia 5 c++ exe invoke pass-by-reference visual-studio-2008

好吧,假设我有b.exe,它接受一个字符串参数.我想在a.cpp中使用系统调用b.exe:

    string s1 = "hallo";
    system("b.exe s1");
    printf("s1 after invoke = %s",s1);
Run Code Online (Sandbox Code Playgroud)

这是b.cpp中的代码:

    int main(string s)
    {
         s = "hello world";
         return 0; 
    }
Run Code Online (Sandbox Code Playgroud)

我想要的是,当我运行a.exe时,输出将是:

    s1 after invoke = hello world
Run Code Online (Sandbox Code Playgroud)

有可能这样做吗?基本上,我只是想将一个变量传递给一个exe,但它必须通过引用,而不仅仅是值,因为我希望在我调用的exe中处理和修改该变量.我已经在互联网上搜索了解决方案,但它只提供了一种方法,可以通过值将变量传递给exe,而不是通过引用.

任何建议将非常感激,但如果可能的话,我希望以上述更正代码的形式提出建议,并包括文件,如果有的话.谢谢你的帮助 :)

Aja*_*jay 3

无法在不同进程之间修改命令行参数。s1仅 A.CPP 知晓,且s仅 B.CPP 知晓。