C 列舉型別 enum

2021-09-30 16:30:07 字數 1413 閱讀 4618

一、列舉型別的定義

enum 型別名 ;

型別名是變數名,指定列舉型別的名稱。

列舉值表也叫列舉元素列表,列出定義的列舉型別的所有可用值,各個值之間用「,」分開。

例: enum suit ;

二、列舉變數說明

列舉變數有多種宣告方式:

1.列舉型別定義與變數宣告分開如:

enum suit ;

enum suit a;

enum suit b,c;

變數a,b,c的型別都定義為列舉型別enum suit。

2.列舉型別定義與變數宣告同時進行如:

enum suit a,b,c;

此處型別名可以省略,如以下的宣告也是可以的。

enum a,b,c;

3.用typedef先將列舉型別定義為別名,再利用別名進行變數的宣告

有以下幾種方式:

1).typedef enum suit suit;

enum suit a;

enum suit b,c;

2).typedef enumsuit;

enum suit a;

enum suit b,c;

3).typedef enum suit ;

enum suit a;

enum suit b,c;

注意:同一程式中不能定義同型別名的列舉型別;不同列舉型別的列舉元素不能同名。

三、列舉元素說明1.將會為每個列舉元素分配乙個整型值,預設從0開始,逐個加1。

2.也可以在定義列舉型別時對列舉元素賦值,此時,賦值的列舉值為所賦的值,而其他沒有賦值的列舉值在為前乙個列舉值加1。

3.列舉值是常量不是變數,不能在程式中再為列舉元素賦值。

四、列舉型與整型的轉換

列舉型可以隱式的轉換為int型,int型不能隱式的轉換為列舉型。

int型不能隱式轉換為列舉型

列舉型可以隱式的轉換為int型

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

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