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