Estoy tratando de escribir un contenedor a una biblioteca nativa en Linux. Problema es el siguiente:python ctypes enviando puntero a la estructura como parámetro a la biblioteca nativa
definición en c:
int mymethod(mystruct* ptr)
en Python:
_lib.mymethod.argtypes = (ctypes.POINTER(mystruct),)
_lib.mymethod.restype = ctypes.c_int
s = mystruct()
_lib.mymethod(ctypes.byref(s))
aumentos : Se espera LP_mystruct ejemplo, en lugar de puntero a myStruct
_lib.mymethod(ctypes.pointer(s))
plantea espera ejemplo LP_mystruct en lugar de LP_mystruct
errores. ¿Cómo pasar una estructura como un puntero a un método nativo?
Gracias.
Mete
Gracias! Usé el segundo método que dijiste y funciona sin problemas. – mete
algo similar aquí - https://codexample.org/questions/238108/python-ctypes-sending-pointer-to-structure-as-parameter-to-native-library.c –
¿Cuál es el tipo de POINTER de nivel superior en ctypes ? –