:
определяет битовое поле .
В вашем примере объекты типа struct st1
используют 13 битов в некотором порядке, выбранном компилятором.
Конкретное расположение, выбранное при компиляции кода, создало объект, занимающий 2 байта.13 битов не обязательно являются первым (или последним) в этих байтах.
Другой тип структуры (struct st2
) занимает (3 бита из) 1 байт.