之前在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)