Python调用C++dll (window平台)

注:python在linux操作系统下调用so文件,再windows下调用dll库
注:生成dll库需要为release,不要用debug。因为debug是调试模式,可能需要很多外部连接等,python在调用时,调用的机器在没有vc++runtime的情况下,会报错。所以一定使用release模式。

1. VS2013创建dll文件:
创建dll文件:

图片.png
图片.png

2. 写dll文件:
VS已经生成了相关文件,我们需要在项目的cpp下面写dll文件:

图片.png

首先需要写如下代码,这条语句表示以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.png

3.写python调用文件:
将dll与py文件置于同一级目录,按以下方式对dll进行调用,即可获得结果输出:

import ctypes
ll = ctypes.cdll.LoadLibrary
lib_add = ll("./called_python.dll")
print lib_add.add(1, 3)
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容