Chinaunix首页 | 论坛 | 博客
  • 博客访问: 573622
  • 博文数量: 94
  • 博客积分: 1631
  • 博客等级: 上尉
  • 技术积分: 586
  • 用 户 组: 普通用户
  • 注册时间: 2009-10-28 12:16
文章分类

全部博文(94)

文章存档

2014年(1)

2013年(11)

2012年(69)

2011年(7)

2010年(6)

我的朋友

分类:

2012-11-24 22:28:15

原文地址:linux 下Python调用C模块 作者:kouyanghao

在C调用Python模块时需要初始化Python解释器,导入模块等,但Python调用C模块却比较简单,下面还是以helloWorld.c 和 main.py 做一说明:

(1)编写C代码,helloWorld.c代码很简单,只是输出“Hello World!”:


(2)将编写的C代码编译成动态链接库的形式,具体命令:


此时在当前目录下就生成了libhello.so 的动态链接库:


(3)在main.py中导入动态链接库,并调用C函数


这里的ctypes是Python的一个外部库,提供和C语言兼容的数据类型,以方便的调用C编译的静态库和动态库中的函数, 在此可以很肯定的说,ctypes中可定对C的数据类型进行了转换,使用时只需import ctypes ,然后导入动态库即可。
(4)在终端下输入Python main.py, 运行结果:


打印出helloWorld.c中的内容, 说明Python调用C模块成功!







阅读(751) | 评论(0) | 转发(0) |
0

上一篇:linux brctl

下一篇:Linux 线程锁详解

给主人留下些什么吧!~~