Я пишу парсер для некоторой структуры данных, после нескольких часов отладки я узнал, что проблема в Visual Studio не интерпретирует структуры, как я говорю. Кажется, что используется "дополнение"
struct foo {
unsigned char a; //0x00
unsigned char b; //0x01
unsigned int c; //0x02
unsigned int d; //0x06
unsigned int e; //0x0A
unsigned int f; //0x0E
//0x12
};
Я ожидал, что sizeof (foo) = 4 * 4 + 2 = 18 ", но я получаю sizeof (foo) = 20". Есть ли возможность отключить отладку только для этой специальной структуры? Я попробовал
__declspec(align(1)) struct foo { ...
но это не сработает. Благодарим вас за помощь.