次の形式でいくつかのデータを処理する必要があります。
typedef struct{
unsigned n1 : 12;
unsigned n2 : 12;
unsigned n3 : 12;
unsigned n4 : 1;
unsigned n5 : 35;
} data;
合計で最大9バイトになるようにしました。
しかし、そうではありません。その構造体の9バイトをファイルに書き込んで読み戻すと、すべてのデータが復元されず、sizeof(data)
16が返されます。
ここでの問題は何ですか。