【发布时间】:2014-01-31 02:31:50
【问题描述】:
我正在使用 Python 处理一些数据(int 数组)。它非常慢。所以我把处理函数放在一个c++ DLL中,通过ctypes与之对话。数据是从 swig 包装的模块 (c++) 加载的。我几乎到处浏览,但没有发现将 'int *' 指针类型的 swig 对象转换为 ctypes int 指针。我该怎么做?
谢谢
【问题讨论】:
-
在 C 和 C++ 中,指针始终是数字。准确地说,它是一个 intptr_t 类型的数字,一种依赖于平台的类型,别名为整数类型,其大小足以容纳内存地址。那么……为什么不直接通过呢?无论哪种情况,它都是一个数字。
-
直接传数据地址错误。除了数据数组的开头之外的任何位置。