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

How to embed commandline arguments in a execution command?

本文关键字:命令行 参数 命令 执行      更新时间:2023-10-16

我需要将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*"的操作数无效,变为二进制"运算符+"

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

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

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

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