枚舉是一組被命名的整型常量集合。生活中常見:星期(SUNDAY...SATURDAY)、月份、狀態碼等。C語言通過 enum 關鍵字定義枚舉類型,將相關常量組織起來,增強代碼可讀性與類型安全。
enum 枚舉名 {
標識符[=整型常量],
標識符[=整型常量],
...
} 枚舉變量;
enum string { x1, x2, x3, x4 } x;
// x1=0, x2=1, x3=2, x4=3
enum string {
x1, // 0
x2 = 0, // 0
x3 = 50, // 50
x4 // 51
} x;
// x1=0, x2=0, x3=50, x4=51
枚舉變量只能取枚舉定義中的常量值:
enum string { x1=5, x2, x3, x4 };
enum string x = x3; // x 實際值為 7
int,可隱式轉換枚舉讓「魔術數字」變為有意義的標識符,是提升代碼可維護性的重要手段。