Выравнивание структуры не работает с #pragma pack
У меня есть структура C ++:
struct a
{
char b;
int c;
int d[100];
};
Размер структуры должен быть 405 байтов. Я видел, что размер структуры составляет 408 байт. Причина в выравнивании до 8 байтов после целого числа «c». Массив "d" должен начинаться с 6-го байта структуры, а не с 9-го байта. я использовал#pragma pack(1)
но это не решило проблему. Я не могу изменить порядок полей в структуре. У вас есть идеи, как я могу решить эту проблему? Спасибо!