比特結構是壹種特殊的結構。當壹個字節或字的多個位需要逐位訪問時,位結構
比按位運算符更方便。
比特結構定義的壹般形式是:
結構位結構名(
數據類型變量名:整型常量;
數據類型變量名:整型常量;
}位結構變量;
數據類型必須是int(無符號或有符號)。整數常數必須是非負整數。
數字,範圍為0~15,表示二進制位數,即有多少位。
變量名是可選的,可以不命名,這是為了滿足需要而規定的。
結構標識_標誌
{ unsigned is _ keyword:1;
未簽名is_external:1
無符號is _ static:1;
} flag
此示例定義了三個位字段,即is_keyword、is_external和is_static,每個字段占用1 bit(1 bit)存儲空間。同時,還定義了壹個名為flag的struct id_flag類型的結構變量。
這是壹個位結構,因為它是可塑的,整個位結構是4個字節。