Python调用C函数学习记录

整体步骤

  1. 将.c文件编译成.so文件
  2. Python中调用.so文件

将.c文件编译为.so文件

设现有test.ctest.h文件,在命令行中输入

// An highlighted block
gcc -o testlib.so -shared -fPIC test.c

调用.so文件

  1. 导入.so文件
// An highlighted block
import ctypes  
ll = ctypes.cdll.LoadLibrary   
lib = ll("./testlib.so")
  1. 根据函数需要,传入相应的参数,得到返回值

传入参数

传入参数类型为数值型,可用ctypes模块中的函数进行改造,参考这儿
传入参数若为指针,则可用ctypes.byref()函数传递

返回值

默认返回值为int
若为其他类型,必须使用.restype = ×××(×××为某种数据类型)进行设置

猜你喜欢

转载自blog.csdn.net/weixin_40679922/article/details/89643292