1、linuxany.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 linuxany.c,将生成一个linuxany.o文件
(2)gcc -shared linuxany.c -o linuxany.so,将生成一个linuxany.so文件
(2)gcc -shared linuxany.c -o linuxany.so,将生成一个linuxany.so文件
3、在Python中调用
- #!/usr/bin/python
- from ctypes import *
- import os
- //参数为生成的.so文件所在的绝对路径
- libtest = cdll.LoadLibrary(os.getcwd() + '/linuxany.so')
- //直接用方法名进行调用
- libtest.display('Hello,I am linuxany.com')
- print libtest.add(2,2010)
4、运行结果
Hello,I am linuxany.com
2012
2012