注:python在linux操作系统下调用so文件,再windows下调用dll库
注:生成dll库需要为release,不要用debug。因为debug是调试模式,可能需要很多外部连接等,python在调用时,调用的机器在没有vc++runtime的情况下,会报错。所以一定使用release模式。
1. VS2013创建dll文件:
创建dll文件:
2. 写dll文件:
VS已经生成了相关文件,我们需要在项目的cpp下面写dll文件:
首先需要写如下代码,这条语句表示以C的格式导出一个lib文件,lib文件里包含了DLL中导出函数的相关信息:
extern "C" _declspec(dllexport) int add(int a, int b);
编写所对应的函数 add(int a, int b):
int add(int a, int b)
{
int c = a + b;
return c;
}
如下:
Paste_Image.png3.写python调用文件:
将dll与py文件置于同一级目录,按以下方式对dll进行调用,即可获得结果输出:
import ctypes
ll = ctypes.cdll.LoadLibrary
lib_add = ll("./called_python.dll")
print lib_add.add(1, 3)
网友评论