閱讀187 返回首頁    go 技術社區[雲棲]


枚舉類型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

  上一篇:go 生產者消費者模式淺析
  下一篇:go Notepad++ 刪除空行