一、列舉的概述
在程式中,可能需要為某些整數定義乙個別名,我們可以利用預處理指令#define來完成這項工作,而我們也可以利用列舉來達到這個目的二、列舉變數的宣告方式#define mon 1
#define tue 2
#define wed 3
#define thu 4
用列舉的寫法為
enum day
;//這就是乙個列舉型別的的定義
它的含義是定義了一種為enum day變數型別(enum是個關鍵字),如果在程式中宣告乙個這樣型別的變數(例如enum day today),這種型別的變數的
取值只能整形常量,並且範
圍在括號中的值,但每次只能有乙個值。
理解列舉應該注意一下幾點:
(1) 列舉型是乙個集合,集合中的元素(列舉成員)是一些命名的整型常量,元素之間用逗號,隔開。
(2)day是乙個識別符號,可以看成這個集合的名字,是乙個可選項,即是可有可無的項。
(3) 第乙個列舉成員的預設值為整型的0,後續列舉成員的值在前乙個成員上加1。
(4) 可以人為設定列舉成員的值,從而自定義某個範圍內的整數。//這裡的數可以自由設定,不一定要按照某種規律
(5) 列舉型是預處理指令#define的替代。
(6) 型別定義以分號;結束
(7) 同乙個程式中不能有同名的列舉型別和列舉成員(列舉變數可能的取值的名稱)
列舉型別名稱的重複typedef enum
day;
typedef enum week
day;
列舉成員名稱的重複
typedef enum
badday;
typedef enum week
goodday;
1:列舉型別的定義和宣告在一起在一起
enum day//這裡的day可以省略掉
day;
2:列舉型別的定義
和宣告分開
enum day
//列舉型別的定義
列舉型別的說明
enum day yesterday;
enum day today;
enum day tomorrow; //變數tomorrow的型別為列舉型enum day
enum day good_day, bad_day; //變數good_day和bad_day的型別均為列舉型enum day
3:用typedef關鍵字將列舉型別定義成別名,並利用該別名進行變數宣告:
typedef enum day//此處的day可以省略掉
day; //此處的day為列舉型enum day的別名,//day可以省略掉, day today, tomorrow//相當於enum day today, tomorrow;
//上面的可以省略的兩處不能同時省略掉
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...
C語言列舉型別(Enum)
在實際程式設計中,有些資料的取值往往是有限的,只能是非常少量的整數,並且最好為每個值都取乙個名字,以方便在後續 中使用,比如乙個星期只有七天,一年只有十二個月,乙個班每週有六門課程等。以每週七天為例,我們可以使用 define命令來給每天指定乙個名字 include define mon 1 def...