同じ動作が、ビットフィールド値の拡張にも適用されます。 ISO C では、int または unsigned int ビットフィールド内のビットの数が int 中のビットの数よりも少ない場合、拡張される型は int です。それ以外の場合、拡張される型は unsigned int です。ほとんどの古い C コンパイラでは、明示的な符号なしビットフィールドの場合、拡張される型は unsigned int です。それ以外の場合は int です。
この場合も、キャストを使用することにより、曖昧になることを防ぐことができます。