Как настроить Python ctypes 'c_wchar_p' и 'c_char_p' restype?
В Python 3
function_name.restype = c_char_p # returns bytes
У меня есть много таких функций, и для каждого, что мне нужно сделатьstr(ret, 'utf8')
, Как я могу создатьcustom_c_char_p
что делает это автоматически, чтобы быть объявленным как это?
function_name.restype = custom_c_char_p # should return str
Библиотека C также выводит UTF-16 какc_wchar_p
который приходит какstr
к питону, но когда я делаюret.encode('utf16')
, Я получил .UnicodeDecodeError
Как я могу настроитьc_wchar_p
чтобы Python знал этос преобразованием UTF-16, чтобы получить правильныйstr
назад?