python3连接c++动态库内容

操作环境:centos7

python版本:Python 2.7.5

gcc版本:gcc (GCC) 4.8.5 20150623 (Red Hat 4.8.5-44)

python安装:https://www.runoob.com/python3/python3-install.html

生成.so动态库文件:g++ -o test.so -shared -fPIC test.cpp

c++代码(test.cpp):

#include <stdio.h>

extern "C"  

{
    int add(int a, int b)
    {
        return a + b;
    }
    void print_sum(unsigned long ulNum)
    {
        while (ulNum != 0)
        {
            printf("The ulNum is : %u\n", ulNum--);
        }
    }

}

python代码(test.py):

#-*-encoding:utf-8 -*-

from ctypes import *
import time

if __name__=='__main__':
    time_begin=time.clock()

    dll=CDLL('./test.so')
    
    print(dll.add(5,7))
    dll.print_sum(10000)
    
    t=time.clock()-time_begin

编写代码结束后把test.py和test.so放在同一级目录下

执行python代码:python test.py
执行结果

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值