我今天开始了我的第一个 Python 扩展,只是在一个 C 库周围创建了一个非常小的包装器作为练习。与 C 库的典型情况一样,您从产生处理程序的初始化函数开始。您可以将该处理程序传递给函数,然后将其传递给释放内存的清理函数。
当我开始编写包装器时,我基本上想有一种方法可以从 python 调用每个本机 C 函数。很快我就遇到了一个问题,我需要从 C 返回一个任意指针到 Python,只是为了在另一个函数中再次将它从那里提供给 C。我不在乎它看起来如何,因为我不在 Python 中使用它,我只是存储它并传递它。
那么如何在 Python 和 C 之间传递一个 void 指针呢?
请注意:我知道不建议使用扩展系统编写如此小的包装器,而是使用 ctypes 和朋友。这只是为了练习。