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

时间:2015-06-15 06:44:23

标签: python c++ command-line-arguments

我需要传递我的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执行命令附加命令行参数?

1 个答案:

答案 0 :(得分:0)

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

最简单的解决方案?只是做

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