, , .
4 GCC 4.8.1 ( 32- ); , , GCC 4.8.1. SO , packed , . #pragma pack. :
#include <stdio.h>
#pragma pack(push, 1)
typedef struct {
unsigned char __reserved : 1;
unsigned char dont_fragment : 1;
unsigned char more_fragment : 1;
unsigned short fragment_offset : 13;
} ipv4_fragmenting;
#pragma pack(pop)
int main()
{
printf("%u\n", sizeof(ipv4_fragmenting));
}
3 , ILP32 MinGW GCC 4.8.1.