如何在函数中构建,传递和成功读取不同ctypes的数组?
我是在Python中使用ctypes的新手,而且以前从未使用过指针,因此有点困惑。我正在尝试建立一个包含不同类型的数组
['m', 3.0, 2.0]
然后将其传递给函数,然后在函数中成功读取数组。
我可以通过以下方式构建数组:
class Array(Structure):
_fields_ = [('typ', c_char), ('m', c_float), ('s', c_float)]
现在,我不知道如何在函数中正确读取它。我尝试了不同的事情
arr = input_arr
arr = ctypes.POINTER(input_arr)
arr = ctypes.cast(input_arr, ctypes.POINTER(ctypes.c_float*3))
arr = ctypes.cast(input_arr, ctypes.POINTER(ctypes.c_char)+ctypes.POINTER(ctypes.c_float*2))
也许没有构建class Array
的另一种方法?