使用ctype在python中调用c

Posted 自挂逸夫楼

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用ctype在python中调用c相关的知识,希望对你有一定的参考价值。

之前在python中调用c++是通过命令行调用的,参数传递是使用文件IO的形式,所以会特别慢

现在用ctypes,参数传递传的只是内存中的指针,这就很舒服

现在来总结下如何使用cytpes在python中调用c (Ubuntu系统下)

 

首先写一个test.c的源码

int add(int a, int b) 
{
    return a + b;
}

然后编译成.so文件 命令如下

gcc -fPIC -c test.c

gcc -shared -o test.so test.o

 

执行完这两个命令之后就出现了test.so文件

现在我们就能在python中调用这个动态链接库了

 

python代码如下

import ctypes as c

libc = c.cdll.LoadLibrary(/home/zhaodao/ffb_workspace/ctypes学习/test.so)

ans = libc.add(10, 2)
print(ans)

 

以上是关于使用ctype在python中调用c的主要内容,如果未能解决你的问题,请参考以下文章

Python混合编程:C语言接口ctypes

Python 外部函数调用库ctypes简介

使用ctypes在Python中调用C++动态库

python C语言扩展之简单扩展-使用ctypes访问C代码

使用 ctypes 传递结构指针

python--ctypes模块:调用C函数