1、通过C语言编写一个简单max函数,生成一个max.so链接库

/*
 * # -shared 为链接库  让编译器知道是要编译一个共享库
 * # -fPIC(Position Independent Code)   编译生成代码与位置无关
 */
int max(int a,int b)
{
    return a>b?a:b;
}
/*
 * gcc -Wall -g  -fPIC -c max.c -o max.o
 * gcc -shared max.o -o max.so
 * -g -Wall 供调试使用,不是必须的<br> * 或者<br> * gcc max.c -fPIC -shared -o max.so
 */

2、使用Python语言调用libmax.so链接库中的max函数

'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:778463939
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
from ctypes import cdll  
cur = cdll.LoadLibrary('./libmax.so')  
a = cur.max(1, 2)
print(a)
Logo

更多推荐