So I\'m trying to figure out why the size of my ctypes.Structure
is not what it should be. My code is the following, theres also the calculation of what the siz
Ok so I've found the solution. Thanks to Andreas who told me that my problem has to do with the offset. So the solution is to add a _pack_ = 1
to the structure like that.
class FILE_HEAD(ctypes.Structure):
_pack_ = 1
_fields_ = [
("name", ctypes.c_char * 4), # 4 bytes
("size", ctypes.c_int), # 4 bytes
("Cal_l", ctypes.c_double), # 8 bytes
("Cal_r", ctypes.c_double), # 8 bytes
("Speed_ChL", ctypes.c_byte), # 1 byte
("Speed_Pulses_ChL", ctypes.c_int), # 4 bytes
("Speed_factor_ChL", ctypes.c_double), # 8 bytes
("Quantity_ChL", ctypes.c_char * 3), # 3 bytes
("Description_ChL", ctypes.c_char * 32), # 32 bytes
("Unit_ChL", ctypes.c_char * 8), # 8 bytes
("Speed_ChR", ctypes.c_byte), # 1 byte
("Speed_Pulses_ChR", ctypes.c_int), # 4 bytes
("Speed_factor_ChR", ctypes.c_double), # 8 bytes
("Quantity_ChR", ctypes.c_char * 3), # 3 bytes
("Description_ChR", ctypes.c_char * 32), # 32 bytes
("Unit_ChR", ctypes.c_char * 8) # 8 bytes
] # = 136 bytes