列挙型
 列挙型とは識別子を値としいて格納できる型列挙定数と言い、この定数は自動的に値が割り振られます
列挙型 の 取り扱い方
列挙には、型と変数の宣言が必要です。
- 
列挙型の宣言  
 enum タグ名 { 名前, 名前, 名前, ・・・}; 
 enum week { SUN, MON, TUE, WED, THU, FRI, SAT };通常は0 から順に定数に整数値を与えられます 
 「SUN=0, MON=1, TUE=2, WED=3, THU=4, FRI=5, SAT=6」値を指定する場合には、 
 enum week { SUN=10, MON=20, TUE=30,
 WED=40, THU=50, FRI=60, SAT=70 }; 
 「=」で値を指定すれば、希望の値にすることが出来ます。また、列挙定数は1つ前に指定された値+1を持ちますので、 
 enum week { SUN=1, MON, TUE, WED, THU, FRI, SAT };
 「SUN=1, MON=2, TUE=3, WED=4, THU=5, FRI=6, SAT=7」
 
列挙型 の実行例
switch文と列挙型を組み合わせることで値を用いるより、列挙型の変数を用いた方が分かりやすくなります。
《 test042.c 》
#include <stdio.h>
enum week {SUN, MON, TUE, WED, THU, FRI, SAT};
int main(){
enum week w;
printf( "曜日を入力しなさい" );
scanf( "%d", &w);
switch( w ) {
case SUN:printf( "日曜日です\n" );break;
case MON:printf( "月曜日です\n" );break;
case TUE:printf( "火曜日です\n" );break;
case WED:printf( "水曜日です\n" );break;
case THU:printf( "木曜日です\n" );break;
case FRI:printf( "金曜日です\n" );break;
case SAT:printf( "土曜日です\n" );break;
default:printf( "エラーです\n" );
}
}結果
曜日を入力しなさい
金曜日を表示したいなら、5を入力



 
			