python调用c接口
2017-04-28 16:14
169 查看
流程: 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")
参考: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")
相关文章推荐
- Linux下用php调用C接口(扩展)的资料
- Python调用DLL问题请教
- PYTHON中的函数指针调用的一种方法
- 使用Python 3.0a1 调用外部应用程序
- python写的调用ms sqlserver数据并发送邮件的小程序
- Python调用C的DLL和VC调用有什么区别?
- python调用cx_Oracle开发(-)---cx_Oracle安装
- C++多线程中调用python api函数
- Python调用C的DLL
- PYTHON 与C相互交互调用实例解析
- Python的可调用对象
- 在win2k3 中用python调用mssql2000
- 在VC6.0中调用python
- Python的可调用对象
- C#下的webservcie 实现代码和 在vc和python下的调用实现(原创)
- Python调用DLL问题请教
- C/C++中如何调用Python方法
- Python实列:计时器调用
- C++ 应用程序中 嵌入的python脚本与C++程序的互相调用(访问 通信)
- python第十五课——图形界面文本框排列和调用