C 之列舉型別enum

2021-07-30 06:32:06 字數 705 閱讀 2379

某些資料只有有限的幾種可能值,雖然可以用int、char等型別來表示它們,但是對資料的合法性檢查卻是一件很麻煩的事。比如,如果用整數0~6代表一星期的7天,那麼變數8便是不合法的資料。列舉就是專門用來解決這種問題的。

將需要的變數值一一列出來,便構成了乙個列舉型別。

宣告形式:

enum 列舉型別名  ;

例如:

enum weekday ;
列舉型別應用說明:

1、對列舉型別按常量處理,不能對它們賦值,例如:

sun = 0;//sun是列舉型別,此語句非法
2、列舉型別具有預設值,它們依次是0,1,2,...例如上例中的sun為0,mon為1,sat為6

3、也可以在宣告時另行定義列舉元素的值,如:

enum weekday ;//定義sun為7,mon為1,以後順序加1,sat為6
4、列舉成員值可以不唯一

enum points ;
上例中point2d顯式初始化為2,point2w預設初始化,為3. point3d 顯式初始化為3,point3w預設初始化為4.

4、列舉值可以進行關係運算

5、整數值不能直接賦給列舉變數,如有需要,應進行強制型別轉換。列舉型別的變數的初始化或賦值只能通過其列舉成員或者同一列舉型別的其他物件來進行。

C 列舉型別enum

關鍵字enum用於宣告列舉,列舉是一種值型別,由許多名字的常量 也叫列舉表 組成。例如 const int monday 0 const int tuesday 1 const sunday 7 可以用c 提供的列舉型別 enum week 列舉中每乙個常量都對應著乙個數值,如果不特別設定,列舉從0...

c 列舉 enum 型別

c 列舉 enum 型別 is2120 csdn 1.最平常的方法 public enum suits public void printallsuits z 2012 2 16 17 49 28 pm is2120 csdn 2.擴充套件方法 更通用,更方便一些 public static cla...

C列舉型別enum

在實際問題中,有些變數的取值被限定在乙個有限的範圍內。例如,乙個星期內有七天,一年有十二個月,乙個班每週有六門課程等等。如果把這些量說明為整型,字元型或其它型別顯然是不妥當的。為此,語言提供了一種稱為 列舉 的型別。在 列舉 型別的定義中列舉出所有可能的取值,被說明為該 列舉 型別的變數取值不能超過...