这个方法是利用了python的一个模块ctypes实现的。
首先是C语言的test.c源码函数:
#include <stdio.h>
int test(char a[100])
{
printf(a);
return 0;
}
然后,使用gcc命令将其打包成一个共享库,就可以提供给python直接使用了,命令如下:
gcc test.c -fPIC -shared -o libtest.so
源码test.c,生成so文件libtest.so
之后即可用python直接调用c中的函数test了,python调用如下:
import ctypes
so = ctypes.CDLL("./libtest.so")
so.test("aaabbbccc")
用python执行,即可打印“aaabbbccc”字样,如图(字符没有换行,显示略挫):