一、Python可以使用三种方式调用C,
1、ctypes
2、SWIG
3、Python/C API
还有一种,由于
*4、Cython是基于Python/C API的,但学习Cython的时候完全不用了解Python/C API。
所以严格说也属于第3种方式的变种。
参考链接:
https://www.cnblogs.com/navysummer/p/10648520.html
https://www.jianshu.com/p/cfcc2c04a6f5
二、C/C++调用Python
也可以使用Python/C API,在C代码种包含头文件Python.h,使用PyObject
三、在Python种注册C的回调,以被动的方式让C去调用Python(很可能是你写的python业务代码)。
1、ctypes Callback functions
Windows使用WINFUNCTYPE
Linux使用CFUNCTYPE
参考链接:
ctypes 官方reference