Möglichkeit für die low-level-Programmierung zur Nachbildung von Statusflags, Device-Registern u. ä.
Erlaubt innerhalb von Klassen:
struct statreg
{ unsigned int enable : 1;
unsigned int page : 3;
unsigned int : 1; // frei
unsigned int mode : 2;
unsigned int : 4; // frei
unsigned int access : 1;
unsigned int length : 1;
unsigned int non_resident : 1;
} *sr;
sr->access = 0;
Als Typ erlaubt: int und unsigned int.
Mischung mit normalen struct-Komponenten ist möglich.
Verboten: Arrays, Adressbildung, Feldgrössen >= sizeof(int).