2

重複の可能性:
C の列挙型のサイズは?

C 言語列挙の再評価: ユーザーは列挙変数のサイズを制御できません。誰かがこれを説明できますか?

4

1 に答える 1

0

このステートメントは C99 6.7.2.2p4 からのものです

各列挙型は、char、符号付き整数型、または符号なし整数型と互換性がある必要があります。型の選択は実装定義である108 ) が、列挙型のすべてのメンバーの値を表すことができなければならない。

108) 実装は、すべての列挙定数が確認されるまで、どの整数型の選択を遅らせることができます。

これにより、コンパイラは、特定の列挙型に対して最適と思われるものを選択できます。列挙型は、マシン間で渡されるバイナリ メッセージで使用するのに最適な選択ではない可能性があります。ただし、整数型を使用して、列挙型にキャストすることはできます。

于 2012-07-25T07:31:37.580 に答える