Питон:преобразование строк для использования с ctypes.c_void_p()
Вопрос
задана строка:
msg="hello world"
Как я могу определить это как ctypes.c_void_p()
тип данных?
следующий код выдает исключение «невозможно преобразовать в указатель»:
data=ctypes.c_void_p(msg)
data
обязан быть void*
введите C, потому что он передается в DLL.
Я предполагаю, что есть способ упаковать/распаковать строку, используя struct
package, но, к сожалению, я очень незнаком с этим процессом.
Решение
Что-то вроде этого?С использованием ctypes.cast
?
>>> import ctypes
>>> p1= ctypes.c_char_p("hi mom")
>>> ctypes.cast( p1, ctypes.c_void_p )
c_void_p(11133300)
Не связан с StackOverflow