Пока вы исследуете размер структуры и как делается заполнение, позвольте мне рассказать вам одну интересную вещь. Размер структуры зависит не только от элементов , но и от порядка их объявления . Например, размер следующих структур различен, хотя оба имеют одинаковое количество элементов одинаковых типов, единственное различие заключается в порядке их объявления!
struct A
{
int a;
char b;
char c;
};
struct B
{
char b;
int a;
char c;
};
cout << "sizeof(A) = " << sizeof(A) << endl;
cout << "sizeof(B) = " << sizeof(B) << endl;
Выход:
sizeof(A) = 8
sizeof(B) = 12
Онлайн-демонстрация в Ideone: http://www.ideone.com/8OoxX