C++ :从C++脚本内部触发存储在我机器上的 python 脚本
C++ : Trigger a python script stored on my machine, from inside a C++ script
我想从我的C++脚本触发一个python脚本。python脚本是独立的,我不需要从C++传递任何东西,我也不需要向C++返回任何东西。
我还想暂停执行C++脚本,直到 python 脚本完成。
我已经尝试了在线提供的嵌入解决方案和包装解决方案,但我正在寻找更简单的东西。
我尝试了以下方法。
include cstdlib
system("py "C:pathpython_script.py"");
此尝试的双引号语法有问题。 然后,我尝试这样做来处理双引号探测器。
include cstdlib
system("py " + char(34) + "C:pathpython_script.py" + char(34));
然后我收到错误"表达式必须具有整数或无作用域枚举类型"。似乎您不能在C++中以这种方式连接字符串? 在最后一次尝试中,我尝试将字符串连接成碎片。
include cstdlib
string path1 = "py ";
string path2 = "C:pathpython_script.py";
string path = python_path1 + char(34) + python_path2 + char(34);
system(path);
我现在收到错误"不存在从"std::string"到"const char"的合适转换函数"。 任何帮助将不胜感激。
正如其他答案告诉您添加 \ 以转义 " 并双重转义您的 \ 路径分隔符:
system("py "C:\path\python_script.py"");
你可以试试system("py "C:pathpython_script.py"");
。
这样,您可以转义引号并将其写入字符串。
看看这篇文章
尝试字符串流
#include <sstream>
std::stringstream ss;
ss << "py ";
ss << ""C:pathpython_script.py"";
system(ss.str().c_str());
相关文章:
- 如何通过cpp程序运行shell脚本
- 在程序中编写脚本来编写和编译代码
- 如何在c++中使用system()来运行包含空格的python脚本
- 在cygwin中运行c++脚本时发生错误
- 如何将真正的字符串从python c-api转换为python脚本
- 用于将C++代码转换为 Web 程序集的脚本未终止
- 如何使用C++初始化向量;脚本化值不是数组、指针或矢量错误
- 在原子中使用犰狳与脚本
- 我适合在我的构建系统中使用 shell 脚本而不是AX_CHECK_COMPILE_FLAG吗?
- CANoe - 无法在 CAPL 脚本中打开.dll
- 在从Qt调用的Python脚本中导入OpenCV崩溃
- 将数组/向量发送到 c++ 脚本的 cython 示例
- 脚本的多重定义::LState
- 从C++应用获取PowerShell脚本输出
- 用户控制从 c++ 到 java 脚本的 Webassembly 访问调用
- 使用 Main() 返回值作为 python 脚本的参数
- 如何从测试脚本中运行WAF编译C++程序?
- bash脚本在使用popen()时不返回代码以调用C ++程序
- 如何注册枚举类型到QJSEngine,以便在脚本环境中使用?
- FindPOCO CMAKE 脚本无法找到 MYSQL::client