1

我正在尝试对在我包装的库中找到的结构进行建模,其中结构有一个指向指针的指针,如下所示:

typedef struct item_t {
  char* name;
}

typedef struct container_t {
  item_t **items;
}

ctypes在使用 Python 的模块类进行建模时Structure,我如何表示一个可变长度的指针数组?

4

1 回答 1

1

您可以使用POINTER并转换item_t **POINTER(POINTER(item_t))

from ctypes import *

class item_t(Structure):
    _fields_ = [
        ('name', c_char_p),
    ]


class container_t(Structure):
    _fields_ = [
        ('items', POINTER(POINTER(item_t))),
    ]
于 2013-09-14T06:56:07.683 回答