Почему в структуре ip определяется как
#if __BYTE_ORDER == __LITTLE_ENDIAN
unsigned int ip_hl:4; /* header length */
unsigned int ip_v:4; /* version */
#endif
#if __BYTE_ORDER == __BIG_ENDIAN
unsigned int ip_v:4; /* version */
unsigned int ip_hl:4; /* header length */
#endif
Младший и старший порядковый номер влияет только на многобайтовые значения. Почему мы храним ip_hl
до ip_v
, не следует ip_hl
передавать после ip_v
?