サンプルプログラム enum.c
(14)列挙型変数
列挙型変数を使用するには、まずenumを使って定数を定義します。
enum タグ名 {定数リスト} 変数名;
enumを使って定義した定数は普通に#defineした定数と同じような感じで使うことができます。
またタグ名を使って、またはtypedefして列挙型変数を宣言できます。
#include <stdio.h>
enum COLOR {
RED, // REDは0
BLUE, // BLUEは1
BLACK // BLACKは2
};
typedef enum {
SLOW = 10, // SLOWは10
MIDDLE, // MIDDLEは11
FAST // FASTは12
} SPEED;
void main( void )
{
enum COLOR col;
SPEED spd;
col = BLUE;
spd = FAST;
// (※GCCは型チェックがゆるいようです)
// col = spd; // これエラーになりません
printf( "col = %d, spd = %d\n", col, spd );
}
実行結果は以下のようになります。
col = 1, spd = 12