8

与えられた文字列:

msg="hello world"

ctypes.c_void_p()これをデータ型として定義するにはどうすればよいですか?

次のコードでは、「ポインターに変換できません」という例外が発生します。

data=ctypes.c_void_p(msg)

datavoid*DLL に渡されるため、C では型である必要があります。

パッケージを使用して文字列をパック/アンパックする方法があるとstruct思いますが、残念ながら私はこのプロセスにあまり慣れていません。

4

1 に答える 1

12

このようなもの?を使用していctypes.castますか?

>>> import ctypes
>>> p1= ctypes.c_char_p("hi mom")
>>> ctypes.cast( p1, ctypes.c_void_p )
c_void_p(11133300)
于 2008-11-25T17:12:04.963 に答える