如何使用Python调用C或C++代码片段?
- 内容介绍
- 文章标签
- 相关推荐
本文共计945个文字,预计阅读时间需要4分钟。
在开源库中,Python和C/C++的混用较为常见。研究Python调用C/C++程序主要分为三步:
1.编写C/C++实现程序。
2.将C/C++程序编译成动态库。
3.在Python中调用编译生成的库。
现在开源库中经常见到python和C/C++混用的情况,现在研究一下
python调用C/C++程序主要可以分为3步:
- 编写C/C++实现程序。
- 将C/C++程序编译成动态库。
- 在Python中调用编译生成的库。
python在调用C/C++程序时有一些不同,需要注意。
原生态实现 python调用C编写C源文件将C语言程序编译好,再使用python中的ctypes模块调用即可。
//test.c
#include<stdio.h>
int foo(int a, int b){
printf("a:%d, b:%d\n", a, b);
return 0;
}
编译C源文件
//先生成test.o文件;然后编译为动态库test.so
gcc -o test.so -shared -fPIC test.c
生成test.so动态库文件,之后就可以在Python中调用foo函数。
本文共计945个文字,预计阅读时间需要4分钟。
在开源库中,Python和C/C++的混用较为常见。研究Python调用C/C++程序主要分为三步:
1.编写C/C++实现程序。
2.将C/C++程序编译成动态库。
3.在Python中调用编译生成的库。
现在开源库中经常见到python和C/C++混用的情况,现在研究一下
python调用C/C++程序主要可以分为3步:
- 编写C/C++实现程序。
- 将C/C++程序编译成动态库。
- 在Python中调用编译生成的库。
python在调用C/C++程序时有一些不同,需要注意。
原生态实现 python调用C编写C源文件将C语言程序编译好,再使用python中的ctypes模块调用即可。
//test.c
#include<stdio.h>
int foo(int a, int b){
printf("a:%d, b:%d\n", a, b);
return 0;
}
编译C源文件
//先生成test.o文件;然后编译为动态库test.so
gcc -o test.so -shared -fPIC test.c
生成test.so动态库文件,之后就可以在Python中调用foo函数。

