C語言 enum列舉型別用法解析

2021-09-26 09:31:27 字數 1147 閱讀 9667

在實際的程式設計應用中,有的變數只有幾種可能的取值,譬如說乙個星期的七種可能,性別的兩種可能等等。c語言為這種型別的變數的定義提供了enum關鍵字

要使用列舉型別的變數,首先需要先定義乙個列舉型別名,然後再宣告該變數是列舉型別的

enum weekday;

enum weekday day; \\該語句宣告了乙個列舉型別的變數

上述例子中的monday、tuseday等稱為列舉元素列舉常量(本人更傾向於稱其為列舉常量,因為這樣可以反映其性質),它們是使用者自定義的識別符號而已。

沒有顯式說明的情況下,列舉型別中的第乙個列舉常量的值為0,第二個為1,以此類推。如果只指定了部分列舉常量的值,那麼未指定值的列舉常量的值將依著最後乙個指定值向後遞增(步長為1)

不同列舉型別中的列舉常量的名字必須互不相同。同一列舉型別中的不同的列舉常量可以具有相同的值

列舉型別為建立常量值與識別符號之間的關聯提供了一種便利的方式。相對於#define語句來說,它的優勢在於常量值可以自動生成

儘管可以宣告列舉型別的變數,但編譯器不檢查這種型別變數中儲存的值是否為該列舉型別中的有效值,不過,列舉型別的變數提供這種檢查

enum weekday;
注意點:

1、定義列舉型別後宣告列舉變數

enum weekday;

int main(int argc, char ** ar**)

2、定義列舉型別的同時宣告列舉變數

enum weekdayday;

int main(int argc, char ** ar**)

3、定義列舉型別的同時利用typedef關鍵字將其宣告為型別別名,然後利用該型別別名宣告列舉型別變數

typedef enum weekdayweekdays;

int main(int argc, char ** ar**)

C語言列舉型別(C語言enum用法)詳解

在實際程式設計中,有些資料的取值往往是有限的,只能是非常少量的整數,並且最好為每個值都取乙個名字,以方便在後續 中使用,比如乙個星期只有七天,一年只有十二個月,乙個班每週有六門課程等。以每週七天為例,我們可以使用 define命令來給每天指定乙個名字 1 include 2 3 define mon...

C語言 列舉型別enum

列舉 將變數的值一一枚舉出來,變數的值只限於列舉出來的值的範圍內。申明列舉型別 enum weekday 定義列舉變數 enum weekday workday,week day enum workday 變數值只能是sun到sat之一 說明 1 在c編譯中,對列舉元素按常量處理,故稱列舉常量。它們...

C語言enum列舉型別

1.列舉型別的定義 列舉是在定義範圍內選取數值的變數 例如 enum itemschoice 也可以enum itemschoice 注意 1 enum是列舉變數的關鍵字 2 列舉中的元素是整數,元素之間用逗號連線 3 第乙個列舉成員的預設值為0 此處從開始 後面的成員依次增加 4 列舉可以替換 d...