C special syntax (adding ':' ) while defining a struct [duplicate]
Possible Duplicate:
What does the : do in a struct declaration after a member
I would like to ask why the :
character was added i开发者_JAVA百科n this struct:
typedef union A
{
struct
{
ubyte B:4;
}
} struct_a;
Thanks in advance;
The :4
is putting a 4-bit limit on the variable. See Section 6.9 of Kernighan & Ritchie.
It's called a bit field. In this case it is saying the B is 4 bits in size.
It declares a bit field with 4 bits.
精彩评论