如何访问Python3中c_void_p_Array_8对象的各个字节?

2024-10-01 04:58:14 发布

您现在位置:Python中文网/ 问答频道 /正文

我使用PythoncTypes从共享库调用函数。 该函数使用char*缓冲区调用,并在其中写入其结果。函数的返回值是写入缓冲区的字节数

调用函数可以很好地工作,但是我很难访问缓冲区的各个字节

我创建缓冲区并调用如下函数:

buf = (c_void_p * RECBUFFERSIZE)()
n = functionInLibrary(buf)

现在,如何读取存储在buf中的单个字节

我已经试过使用 cast(buf, c_char_p).value这将生成一个包含buf内容的bytes对象。但是它被buf中的第一个空字节终止

这正是我不想要的。我需要从buf读取第一个n字节


Tags: 函数内容字节value缓冲区调用函数返回值char