您当前的位置: 首页 >  Python

令狐掌门

暂无认证

  • 1浏览

    0关注

    513博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

python调用C++ dll

令狐掌门 发布时间:2020-03-15 16:29:34 ,浏览量:1

     python和C++可以相互调用,例如,我用VS2019写了一个CMATHDLL.dll,  实现了python调用C++ dll.

 

一 创建C++ dll工程

.h

extern "C" CMATHDLL_API int add(int a, int b);

extern "C" CMATHDLL_API int sub(int a, int b);

.cpp

CMATHDLL_API int add(int a, int b)
{
    return a + b;
}

CMATHDLL_API int sub(int a, int b)
{
    return a - b;
}

       把生成的dll放到python程序目录

二  导入ctypes模块       

     python需要使用ctypes模块的WinDLL方法调用C++ dll, 代码如下:

import ctypes
import os

#获取dll路径
current_path = os.path.dirname(__file__)
dllpath = os.path.join(current_path, "CMATHDLL.dll")

print(dllpath)

#加载C++ dll
pDll = ctypes.WinDLL(dllpath)

#打印dll地址
print(pDll)

#调用CMATHDLL.dll里的函数
pReault1 = pDll.add(1,2)
pReault2 = pDll.sub(1,2)

print(pReault1)
print(pReault2)

       输出结果

      由此可见,python成功调用了C++代码. C++也可以调用python, 可以参考这个链接:C++调用python

      

关注
打赏
1652240117
查看更多评论
立即登录/注册

微信扫码登录

0.0371s