python 编写dll给c++调用

Python可以通过ctypes库将Python函数封装为DLL文件,以便C++程序调用。下面是一个简单的示例:

  1. 创建一个Python脚本,其中包含要封装的函数,例如:

def add(x, y):
return x + y
  1. 将该脚本编译为DLL文件。可以使用pyinstaller或py2exe等工具来执行此操作。例如,使用pyinstaller,可以在命令行中输入以下命令:

pyinstaller --onefile my_script.py

这将生成一个名为my_script.dll的DLL文件。
3. 在C++程序中包含Python的头文件和DLL文件,并使用Python的API来调用Python函数。例如:


#include 
#include 

int main() {
Py_Initialize();
PyRun_SimpleString("import my_script");
PyRun_SimpleString("result = my_script.add(2, 3)");
int result = PyInt_AsLong(PyDict_GetItemString(PyModule_GetDict(PyImport_AddModule("my_script")), "result"));
printf("Result: %d\n", result);
Py_Finalize();
return 0;
}

该程序将初始化Python解释器,导入Python脚本,调用Python函数,并获取返回结果。最后,它打印结果并关闭Python解释器。

你可能感兴趣的:(python,c++,开发语言)