编译器错误 C2034

“identifier”: 位域类型对位数太小

位域声明中的位数超过了基类型的大小。

以下示例生成 C2034:

// C2034.cpp
struct A {
   char test : 9;   // C2034, char has 8 bits
};

可能的解决方法:

// C2034b.cpp
// compile with: /c
struct A {
   char test : 8;
};