python中ctypes调用结构体指针的问题
python小白一枚,C是完全不懂啊。。。。。最近碰到了如下问题,需要用python调用dll,下面是dll中定义的方法跟结构体
typedef struct filenode{
char *filename
struct filenode *next
}
int checkfile(const char *files, struct filenode **notexistfiles)
根据官方文档,目前可以知道对应python的结构提的定义如下:
class filenode(Structure):
pass
filenode._fields_ = [("filename", c_char_p), ("next", POINTER(filenode))]
请问该如何调用传参,并取到结构体重的数据呢,谢谢!! 在各种资料及尝试后,该问题已解决了
解决方法如下:
class filenode(Structure):
pass
filenode._fields_ = [("filename", c_char_p), ("next", POINTER(filenode))]
file_node = POINTER(filenode)()
checkfile("aaa", byref(file_node)
页:
[1]