列挙型変数

  宣言方法や使用方法等が Java とはかなり異なります.例えば,変数 color の値が 0 のときは赤,1 のときは青等を表したいとします.変数 color を列挙型変数として,
enum coltype {red, blue, black, white} color;		
のように宣言しておくと( red,brue 等を列挙定数と呼びます),
color = blue;           /* 変数 color に青を代入 */
if (color == red)       /* もし,色が赤ならば */		
のような表現が可能になります.列挙定数は int 値を持ち,その値は,順に,0,1,2,・・・となります.ただし,= 演算子を使用して,その値を変更することができます.例えば,
enum coltype {red, blue, black=5, white} color;		
とすると,各列挙定数の値は,
red : 0,  blue : 1,  black : 5,  white : 6		
となります.列挙型の宣言方法の一般形式は以下のようになります.
enum [列挙型名] [{列挙定数リスト}] [変数リスト];		
また,型宣言と変数の宣言を以下のように,別々に書くこともできます.
enum coltype {red, blue, black, white};
enum coltype color;