python调用c接口

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u014132659/article/details/70915720


流程: 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")

扫描二维码关注公众号,回复: 4191499 查看本文章

猜你喜欢

转载自blog.csdn.net/u014132659/article/details/70915720