есть структура. теоретически должна уместится в 32 бита, т.е. в int32.
class header(ctypes.Structure):
# _pack_ = 1
_fields_ = [
('filedA', ctypes.c_ubyte, 3),
('fieldB', ctypes.c_ubyte, 6),
('fieldC', ctypes.c_uint32, 13),
('fieldD', ctypes.c_uint32, 9)
]
Но на деле получаем
aa = header()
ctypes.sizeof(aa)
5
еще интересней, когда заменяем в классе поля C и D на c_uint16, в результате размер = 6.
директива _pack_ тут не помогает, проверено.
вопрос - почему не укладывается структура в 4 байта?