BitString と ctypes を使い始めたばかりで、バイナリ ファイルの一部がクラスに格納されstartdata
ています。BitArray
> print(startdata)
0x0000000109f0000000010605ffff
ここで、このデータを as 引数を取る C 関数にそのまま渡す必要があるunsigned char *
ため、最初に次のようなことを試みます。
buf = (c_ubyte * len(startdata))()
最終的にこれを行うには:
buf_ptr = cast(pointer(buf), POINTER(c_ubyte))
startdata
これは機能しますが、作成したばかりの配列/バッファにバイトデータを割り当てるにはどうすればよいですか?
これは機能しません:
> buf = (c_ubyte * len(startdata))(*startdata.bytes)
TypeError: an integer is required