gpt4 book ai didi

python - 在Python中定义数组类型由C函数填充

转载 作者:行者123 更新时间:2023-11-30 20:38:41 27 4
gpt4 key购买 nike

C header 中,“param1”被声明为 OUT 参数:

long A_API test( 
___OUT_ char param1
)

Python代码中,我尝试使用数组,以便test函数有空间来填充此参数。我已导入ctpyes并且:

test_array = bytearray(b'')
importArray = (ctypes.c_char*40)(*test_array)

def callTest():
result = lib.test(importArray)
return result

但是 test 函数没有被执行并且在某个地方失败了。

不幸的是,我只有 .so 文件,没有源代码,所以我无法调试代码,但我假设我在这里遇到类型定义问题。

感谢任何帮助。

最佳答案

根据函数定义,Python 代码应该是这样的:

out_char = ctypes.c_char()
result = lib.test(ctypes.byref(out_char))

关于python - 在Python中定义数组类型由C函数填充,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28264921/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com