次の方法で共有


Storage of Bit Fields (ビット フィールドの格納)

ANSI 3.5.2.1 int 内のビット フィールドの割り当て順序

ビット フィールドは、整数内で最下位ビットから最上位ビットへと割り当てられます。 次のコードでは、

struct mybitfields
{
   unsigned a : 4;
   unsigned b : 5;
   unsigned c : 7;
} test;

int main( void )
{
   test.a = 2;
   test.b = 31;
   test.c = 0;
}

ビットは次のように配置されます。

00000001 11110010
cccccccb bbbbaaaa

80x86 プロセッサは整数値の下位バイトを上位バイトの前に格納するため、上記の整数 0x01F2 は、0xF2 の後ろに 0x01 が続くように物理メモリに格納されます。

関連項目

構造体、共用体、列挙体、ビット フィールド