能夠使用枚舉類型聲明表明整數常量的符號名稱。
經過enum,建立一個新類型,並指定它能夠擁有的值。(就像日常用一個整形變量,咱們指定它等於0的時候表明什麼,1呢,2呢。。。而經過枚舉,就
增長了程序的可讀性,好看)
它能夠這樣聲明:
enum color {red,orange,yellow,green,blue,violet}; //聲明enum color這種枚舉類型
enum color c; //聲明c爲enum color類型
枚舉常量都是int類型的常量。列表中的枚舉常量默認被指定爲整數0、一、2。。。也能夠隨便指定它的數值。在指定數值後面的沒賦值的數默認遞加1。
一個利用到enum的例子以下:
編寫一個將輸入複製到輸出的程序,並將其中的多個空格用一個空格表示。
思路:這個程序在於你每讀入一個字符,你都要根據它前面是在空格的狀態(in)仍是非空格的狀態來決定輸出。
1 #include<stdio.h>
2
3 int main(void) 4 { 5 enum state {in,out}; //in the space state
6
7 char c; 8 enum state s; 9
10 s = out; 11 while ((c = getchar()) != EOF) 12 { 13 if (c == ' ') 14 s = in; 15 else
16 { 17 if (s == in) 18 { 19 putchar(' '); 20 s = out; 21 } 22 putchar(c); 23 } 24 } 25 return 0; 26 }