枚舉常量是枚舉類型中的值,即枚舉值。枚舉類型是一種用戶定義的類型,只有用戶在程序中定義它后才能被使用。用戶通常利用枚舉類型定義程序中需要使用的一組相關(guān)的符號(hào)常量。枚舉類型的定義格式為:
enum <枚舉類型名> {<枚舉表>};
它是一條枚舉類型定義語句,該語句以enum保留字開始,接著為枚舉類型名,它是用戶命名的一個(gè)標(biāo)識(shí)符,以后就直接使用它表示該類型,枚舉類型名后為該類型的定義體,它是由一對(duì)花括號(hào)和其中的枚舉表所組成,枚舉表為一組用逗號(hào)分開的由用戶命名的符號(hào)常量,每個(gè)符號(hào)常量又稱為枚舉常量或枚舉值。如:
(1) enum color{red, yellow, blue};
(2) enum day{Sun, Mon, Tues, Wed, Thur, Fri, Sat};
第一條語句定義了一個(gè)枚舉類型color,用來表示顏色,它包含三個(gè)枚舉值red,yellow和blue,分別代表紅色、黃色和蘭色。
第二條語句定義了一個(gè)枚舉類型day,用來表示日期,它包含7個(gè)枚舉值,分別表示星期日、星期一至星期六。
一種枚舉類型被定義后,可以象整型等預(yù)定義類型一樣使用在允許出現(xiàn)數(shù)據(jù)類型的任何地方。如可以利用它定義變量。
(1) enum color c1, c2,c3;
(2) enum day today, workday;
(3) c1=red;
(4) workday=Wed;
第一條語句開始的保留字enum和類型標(biāo)識(shí)符color表示上述定義的枚舉類型color,其中enum可以省略不寫,后面的三個(gè)標(biāo)識(shí)符c1,c2和c3表示該類型的三個(gè)變量,每一個(gè)變量用來表示該枚舉表中列出的任一個(gè)值。
第二條語句開始的兩個(gè)成分(成分之間的空格除外)表示上述定義的枚舉類型day,同樣enum可以省略不寫,后面的兩個(gè)標(biāo)識(shí)符today和workday表示該類型的兩個(gè)變量,每一個(gè)變量用來表示該枚舉表中列出的七個(gè)值中的任一個(gè)值。
第三條語句把枚舉值red賦給變量c1,第四條語句把枚舉值Wed賦給變量workday。
在一個(gè)枚舉類型的枚舉表中列出的每一個(gè)枚舉常量都對(duì)應(yīng)著一個(gè)整數(shù)值,該整數(shù)值可以由系統(tǒng)自動(dòng)確認(rèn),也可以由用戶指定。若用戶在枚舉表中一個(gè)枚舉常量后加上賦值號(hào)和一個(gè)整型常量,則就表示枚舉常量被賦予了這個(gè)整型常量的值。如:
enum day{Sun=7, Mon=0, Tues, Wed, Thur, Fri, Sat};
用戶指定了Sun的值為7,Mon的值為0。
若用戶沒有給一個(gè)枚舉常量賦初值,則系統(tǒng)給它賦予的值是它前一項(xiàng)枚舉常量的值加1,若它本身就是首項(xiàng),則被自動(dòng)賦予整數(shù)0。如對(duì)于上述定義的color類型,red,yellow和blue的值分別為0,1和2;對(duì)于剛被修改定義的day類型,各枚舉常量的值依次為7,0,1,2,3,4,5,6。
由于各枚舉常量的值是一個(gè)整數(shù),所以可把它同一般整數(shù)一樣看待,參與整數(shù)的各種運(yùn)算。又由于它本身是一個(gè)符號(hào)常量,所以當(dāng)作為輸出數(shù)據(jù)項(xiàng)時(shí),輸出的是它的整數(shù)值,而不是它的標(biāo)識(shí)符,這一點(diǎn)同輸出其他類型的符號(hào)常量是一致的。
本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)
點(diǎn)擊舉報(bào)。