zahada delky struktury GCC
Jaroslav Buchta
jaroslav.buchta na hascomp.cz
Pondělí Březen 11 19:41:28 CET 2024
Mejme tyto struktury
#define CFG_DATA_LEN 1024
#define GPS_FIXP_MULT (10e7)
typedef struct
{
char first_read[9];
uint8_t res_valid;
uint8_t reserved;
char user_card[9];
char user_phone[13];
char res_time[34];
} app_data_reservation_t;
typedef struct {
union {
struct {
uint32_t index; // index of
configuration, count of writes
int gsm_preffered_speed; // module GSM
baudrate
char gsm_apn[32]; // module GSM APN
char car_ident[8]; // car identification
char car_aeskey[65]; // 256b -> 64
chars hex encoded
app_data_reservation_t reservation; // reservation data
int32_t gps_last_latitude; // car last
known latitude, *10^7 (GPS_FIXP_MULT)
int32_t gps_last_longitude; // car last
known longitude, *10^7 (GPS_FIXP_MULT)
};
uint8_t ba[CFG_DATA_LEN - 4];
};
uint32_t crc32;
} app_data_cfg_t;
Takhle je to dle ocekavani, app_data_cfg_t ma delku 1024B
Kdyz ale pro ty GPS souradnice pouziju typ double, neni delka
ocekavanych 1024 ale 1032B
Myslel jsem nejdriv, ze je to tou vlozenou strukturu ale dela to ten double.
Tusi nekdo, cim to je? Je to nejaka pro me skryta vlastnost nebo chyba?
Další informace o konferenci Hw-list