1)enum{E1,E2}E; タグ名は省略したenum(列挙)型を定義する。enum{E1,E2}型の変数Eを宣言する。 1)ではenum{E1,E2}型の変数Eを宣言してる。 2)typedef enum{e1,e2}e; タグ名は省略したenum(列挙)型を定義する。enum{e1,e2}型を新しい型e型と定義する。 2)ではenum{e1,e2}型をeという新しい型で定義をしてる。変数の宣言は行われない。 1)の場合、関数の中で新しく変数宣言する場合 #include<stdio.h> enum{E1,E2} E; int main() { int …; double …; enum{E1,E2} a1;//enum{E1,E2}型の変数a1を新たに宣言 …; return 0; } 2)の場合 #include<stdio.h> typedef enum{e1,e2}e; int