См. Эту статью в Википедии для получения дополнительной информации, но в основном это для того, чтобы убедиться, что структура занимает точное число байтов - что, как утверждает Steve314, означает, что sizeof
является точным кратным выравнивания.
Под выравниванием данных подразумевается размещение данных со смещением в памяти, кратным некоторому кратному размеру слова, что повышает производительность системы благодаря тому, как процессор обрабатывает память. Для выравнивания данных может потребоваться вставить несколько бессмысленных байтов между концом последней структуры данных и началом следующей, которая является заполнением структуры данных.
Вы также должны знать, что, хотя программисту было очень важно знать об этом, теперь стало меньше, потому что он часто обрабатывается компилятором для вас. Хотя будут опции компилятора, которые позволят вам контролировать процесс.