Wie kann man die Python-C-Typen 'c_wchar_p' und 'c_char_p' neu eingeben?
In Python 3
function_name.restype = c_char_p # returns bytes
Ich habe viele solcher Funktionen und für jede, die ich tun mussstr(ret, 'utf8')
. Wie kann ich einen erstellen?custom_c_char_p
dass dies automatisch so deklariert werden soll?
function_name.restype = custom_c_char_p # should return str
Die C-Bibliothek gibt auch UTF-16 als ausc_wchar_p
was kommt durch alsstr
zu python, aber wenn ich es tueret.encode('utf16')
, Ich bekommeUnicodeDecodeError
.
Wie kann ich anpassen?c_wchar_p
um sicherzustellen, dass Python weiß, dass es UTF-16 konvertiert, um eine korrekte Version zu erhaltenstr
zurück?