Python向怎么向C语言传递结构体

2025-04-07 09:08:29
推荐回答(1个)
回答(1):

况如下:
打算从Python发一个TCP数据包给远程服务器,数据的主体是一个C语言的 struct (较大,size 为1402)。由于这个struct太复杂,故不打算在python 处对其重新定义,目前的想法是用python调用一个C语言的模块,在这个模块中定义这个Struct,并设置好数据后,将其struct传回python中,再打包传送服务器。

但是不知道如何将这个struct 变量从C语言 传入Python中。尝试用Py_BuildValue函数,以Py_BuildValue("P",&interface_setup) //interface_setup为结构体变量
传递,

但是几次都得到运行时错误:

SystemError: bad format char passed to PyBuildVaule。