Linux下Python执行C函数


1、util.c代码如下:

#include<stdio.h>

void display(char* msg){

    printf("%s\n",msg);

}

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

2、编译c代码,最后生成Python可执行的.so文件
(1)gcc -c util.c,将生成一个util.o文件
(2)gcc -shared util.c -o util.so,将生成一个util.so文件

Linux下Python执行C函数

3、在Python中调用
test.py代码如下:

#!/usr/bin/python

from ctypes import *
import os 
//参数为生成的.so文件所在的绝对路径
libtest = cdll.LoadLibrary(os.getcwd() + '/util.so') 
//直接用方法名进行调用
print libtest.display('Hello,I am Dream') 
print libtest.add(11,100)

4、运行

Linux下Python执行C函数

5、结果截图

Linux下Python执行C函数

相关内容