今まで見たことのない構文に出くわしました。
typedef struct SomeStruct
{
unsigned char ip_version :4;
unsigned char ip_tos;
unsigned char ip_frag_offset :5;
unsigned char ip_more_fragment :1;
unsigned char ip_dont_fragment :1;
unsigned char ip_reserved_zero :1;
unsigned char ip_frag_offset1;
unsigned char ip_ttl;
} SomeHeader;
は何のcolon #;
ためですか?代入演算子を使うのと同じですか?コロンを使用する理由と、これが許可されている利点や理由はありますか?