枚舉類型enum
enum枚舉類型:在實際問題中,有些變量的取值被限定在一個有限的範圍內。例如,一個星期內隻有七天,一年隻有十二個月,一個班每周有六門課程等等。如果把這些量說明為整型,字符型或其它類型顯然是不妥當的。為此,C語言提供了一種稱為“枚舉”的類型。在“枚舉”類型的定義中列舉出所有可能的取值,被說明為該“枚舉”類型的變量取值不能超過定義的範圍。應該說明的是,枚舉類型是一種基本數據類型,而不是一種構造類型,因為它不能再分解為任何基本類型。
enum是枚舉型 union是共用體,成員共用一個變量緩衝區
#include <iostream> using namespace std; void main() { enum open_modes {input, output, append}; enum Forms {shape = 1, sphere, cylinder, polygon}; cout<<"sizeof(open_modes) == "<<sizeof(open_modes)<<endl; cout<<"sizeof(Forms) == "<<sizeof(Forms)<<endl; cout<<"sizeof(int) == "<<sizeof(int)<<endl; //open_modes om = 1;// error open_modes om = (open_modes)1; //int t = open_modes::input; int t = input; int k = sphere; cout<<"om == "<<om<<" t == "<<t<<" k == "<<k<<endl; open_modes om2 = (open_modes)100; cout<<"om2 == "<<om2<<endl; }
輸出:
最後更新:2017-04-03 05:39:09