如何在执行命令中嵌入命令行参数?

How to embed commandline arguments in a execution command?

我需要将我的 C++ 代码的命令行参数作为我的 python 脚本的命令行参数传递。

我的代码如下:

int main(int argc,char * argv[]) {
FILE *in;
char buff[512];

cout<<argv[1];

string str = "python comparescript.py "+argv[1]+" "+argv[2]+" "+argv[3];

if(!(in = popen(str, "r"))){
    cout<<"Image Comparison made successful";
}
cout<<"Image Comparison made successful";

显示如下错误:

错误:'const char [25]' 和 'char*' 类型的无效操作数转换为二进制 'operator+'

如何使用 python 执行命令附加我的命令行参数?

为了能够使用 + 运算符连接字符串,至少其中之一必须是 std::string 对象。

最简单的解决方案?就这样

string str = string("python comparescript.py ")+argv[1]+" "+argv[2]+" "+argv[3];