我在C++中调用python写的函数为什么不行?

C++输入图片路径 和 保存路径python中对图像进行处理后保存到保存路径中,但是失败了。

可以具体说一下是怎么调用的吗,像我使用C/C++调用这个外部程序(例如Python程序)时,我是这么做的,通过命令行参数通信,给个模板,注意看我的注释。

C的部分(用C++也行,不过不难,也不是重点):

#include<stdlib.h>

#include<stdio.h>

int main(){

char pic_dir[255],pic_dir[255],cmd[255];

printf("What is your pic_dir? (e.g. C:\\a.jpg)\n");

/*虽然我强烈认为命名上应该不用pic_dir而是用pic_path*/

scanf("%s",pic_dir);

printf("What is your pic_name?(e.g. b.jpg)\n");

scanf("%s",pic_name);

printf("so we are calling a python program to deal with those above, please wait...\n");

sprintf(cmd,"python process.py %s %s ",pic_dir,pic_name);

/*这里是一个关键点,python的运行目录在你的PATH环境变量里有,如下图最后一行*/

system(cmd);

return 0;

}

process.py:(部分内容,主要是在process方法定义后面加一点东西)

def process(pic_dir,pic_name):

...#(这里的语句体(suite)不用改, 加上后面两句就行)

from sys import argv

process(argv[1],argv[2])


OK完成

温馨提示:答案为网友推荐,仅供参考
第1个回答  2019-12-16
具体是哪一个步骤有问题的