c語言基礎 列舉

2022-03-01 16:17:42 字數 446 閱讀 6593

列舉型別的定義形式為:

enum typename;

enum是乙個新的關鍵字,專門用來定義列舉型別,這也是它在c語言中的唯一用途;typename是列舉型別的名字;valuename1, valuename2, valuename3, ......是每個值對應的名字的列表。注意最後的;不能少。

列舉和巨集其實非常類似:巨集在預處理階段將名字替換成對應的值,列舉在編譯階段將名字替換成對應的值。我們可以將列舉理解為編譯階段的巨集。

列舉中的值它們不占用資料區(常量區、全域性資料區、棧區和堆區)的記憶體,而是直接被編譯到命令裡面,放到**區,所以不能用&取得它們的位址。這就是列舉的本質。

列舉型別變數需要存放的是乙個整數,它的長度和 int 應該相同,4個位元組。

C語言基礎 C語言列舉 列舉型別的基本認識

前言 前段時間我們講完了指標和結構體,這次我們來講列舉型別,什麼是列舉呢?打個比方,比如我們乙個星期有七天,從周一到週日,這是固定不變,不可能無端端的跳出乙個星期八出來,在這種固定的情況下,我們如果要寫乙個程式去固定這七天,並且不讓別人亂修改,為了滿足這個需求,列舉就誕生啦.開始首先我們來看看乙個需...

C語言基礎歸納 列舉常量

enum 語句允許定義一組整數常量 1.enum woodwind 該語句的結果是 oboe flute clarinet 和bassoon,常量值分別為0 1 2 和3。如果不想按照從0 開始的順序,可以自己給常量賦值。任何沒有被指定值的常量,其值都比前乙個常量大1,如 1.enum woodwi...

C語言 列舉

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