C 枚舉

2018-05-20 15:17 更新

學(xué)習(xí)C - C枚舉

使用枚舉,您定義一個(gè)新的整數(shù)類型,其中類型的變量具有可能值的固定范圍。

這里是一個(gè)定義了名為Weekday的枚舉類型的語(yǔ)句的示例:

enum Weekday {Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday};

這個(gè)語(yǔ)句定義了一個(gè)類型。新類型的名稱Weekday遵循枚舉關(guān)鍵字,此類型名稱稱為枚舉的標(biāo)記。

枚舉是整數(shù)類型,您指定的枚舉器將對(duì)應(yīng)于整數(shù)值。

默認(rèn)情況下,枚舉器將從零開(kāi)始,每個(gè)連續(xù)的枚舉器的值都比前一個(gè)枚舉值多一個(gè)。

在這個(gè)例子中,星期一到星期日的值將為0到6.您可以聲明一個(gè)類型為Weekday的變量,并將其初始化為:

enum Weekday today = Wednesday;

這聲明一個(gè)名為today的變量,并將其初始化為星期三。

定義類型時(shí)也可以聲明枚舉類型的變量。

這是一個(gè)定義枚舉類型加上兩個(gè)變量的語(yǔ)句:

enum Weekday {Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday} today, tomorrow;

這將聲明枚舉類型Weekday和該類型的今天和明天的兩個(gè)變量。

當(dāng)然你也可以在同一個(gè)語(yǔ)句中初始化變量,所以你可以這樣寫:

enum Weekday {Monday, Tuesday, Wednesday, Thursday, 
                      Friday, Saturday, Sunday} today = Monday, tomorrow = Tuesday; 

因?yàn)槊杜e類型的變量是整數(shù)類型,它們可以在算術(shù)表達(dá)式中使用。你可以這樣寫上面的語(yǔ)句:

  
enum Weekday {Monday, Tuesday, Wednesday, Thursday, 
              Friday, Saturday, Sunday} today = Monday, tomorrow = today + 1; 

枚舉值

您可以顯式地為任何或所有枚舉器指定自己的整數(shù)值。

雖然您用于枚舉器的名稱必須是唯一的,但是枚舉器值本身不需要是唯一的。

以下是如何定義Weekday類型,以便枚舉器值從1開(kāi)始:

enum Weekday {Monday = 1, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday};

現(xiàn)在,枚舉器周一到周日將對(duì)應(yīng)于值1到7。

在枚舉數(shù)后面有顯式值的枚舉器將被賦值連續(xù)的整數(shù)值。

您可以定義枚舉來(lái)識(shí)別卡面值,如下所示:

  
enum FaceValue { two=2, three, four, five, six, seven, 
                 eight, nine, ten, jack, queen, king, ace}; 
以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)