如何从Python C扩展将原始数据复制到ctypes.Structure?

发布于 2024-11-01 15:14:48 字数 215 浏览 7 评论 0原文

是否可以在Python C扩展中获取指向ctypes.Structure实例的原始数据的指针值?我想通过导入和使用 ctypes.memmovectypes.addressof 来访问此类实例中的数据并将数据复制到此类实例,而无需打扰解释器。换句话说,ctypes 是否提供了我可以直接使用的 C API?

Is it possible to get the value of pointer to raw data of ctypes.Structure instance in Python C extension? I would like to access and copy data from/to the instance of this class without bothering the interpreter by importing and using ctypes.memmove or ctypes.addressof. In other words, does ctypes provide any C API which I can use directly?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

梦回旧景 2024-11-08 15:14:49

ctypes 似乎没有公开 C API。

这是在 >= 2.7 中完成的: http://docs.python.org/extending/extending.html#providing-ac-api-for-an-extension-module

ctypes 源标记为 2.7.1:http://svn.python.org/view/python/tags/r271/Modules/_ctypes/< /a>

我在源代码中没有看到构建 API 胶囊的任何地方。您必须通过 Python C API 使用 ctypes Python 接口。

It doesn't appear that ctypes exposes a C API.

This is how it's done in >= 2.7: http://docs.python.org/extending/extending.html#providing-a-c-api-for-an-extension-module

ctypes source tagged at 2.7.1: http://svn.python.org/view/python/tags/r271/Modules/_ctypes/

I don't see anywhere in the source where an API capsule is built. You'll have to use the ctypes Python interface via the Python C API instead.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文