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