2024-09-20 22:56:59 发布
网友
我有一些用python编写的C代码。作为这段代码的一部分,它生成一个指向2D字符数组(较大表中的字符串对)的指针
我想要一种在python中生成兼容表并将指针传递到C的方法。该点需要是LP_LP_char_p类型,并且需要能够被引用为ptr[2][1]或类似的类型
我创建了一些有效的代码,因此我将其发布在这里:
从ctypes导入指针、指针、字符、字符、地址
rows = 13 cols = 2 line_len = 12 type_char_p = POINTER(c_char_p) type_char_pp = POINTER(POINTER(c_char_p)) char_p_array = ((c_char_p * cols) * rows)() char_pp_array = (type_char_p * rows)() for i in range(rows): for j in range(cols): char_p_array[i][j] = f'msg {i} {j}'.encode('raw_unicode_escape') char_pp_array[i] = char_p_array[i] p = cast(char_pp_array, type_char_pp) In: p Out: <__main__.LP_LP_c_char_p at 0x28acdb477c8> In: p.contents.contents.value Out: b'msg 0 0' In: p[0][0] Out: b'msg 0 0' In: p[1][1] Out: b'msg 1 1'
我创建了一些有效的代码,因此我将其发布在这里:
从ctypes导入指针、指针、字符、字符、地址
相关问题 更多 >
编程相关推荐