python调用c接口


流程: python 加载c库  --->  调用c库函数(注意c数据类型 和 python类型对应,靠ctypes模块做中间类型对应)

参考:http://blog.csdn.net/linda1000/article/details/12623527


1、首先pyhton加载c库

参考:http://blog.csdn.net/caimouse/article/details/38395461

python提供了三种加载动态链接库的对象 : cdll,windll,oledll

这三种对象有什么不同?他们使用的函数调用约定不同。那么为什么有不同的函数调用约定?

参考:http://blog.csdn.net/fly2k5/article/details/544112



 windows下用属性的方式加载一个库,也可以使用构造函数的方式--显示调用构造函数CDLL 或者WinDLL
    比如:   cdll.kernel32       #加载kernel32这个库
                  windll.kernel32    #windll加载kernel32这个库
linux下用属性加载库的这种方式不行,需要使用构造函数加载
    比如:    libc = CDLL('libc.so.6')

2、把库函数作为库的属性使用,这就是调用库函数

    libc = CDLL("msvcrt")
    libc.printf("hello world\n")

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值