c++中有一種資料型別稱為列舉(enumeration)型別,它允許使用者自己來定義一種資料型別,並列出該資料型別的取值範圍。定義列舉型別的語法格式為:enum 型別名;
定義列舉常量的位置應該在程式首次使用該型別名之前,否則程式無法識別該型別。列舉型別中列出的常量稱為列舉常量,它並不是字串也不是數值,而只是一些符號。
如果我們要定義一周7天的日期型別,可以這樣寫
enum day;
這時,程式中就有了一種新的資料型別---day,它的取值範圍就是sunday到saturday的那7天,把型別設計好以後就能建立乙個day型別的變數了
day today;
today=sunday;
這樣day型別的變數today的值就是sunday了。
其實,day型別變數today中儲存的是整數,也就是說,乙個整數和乙個列舉常量一一對應起來,要注意是一一對應而不是相等。但是如果我們把整數直接賦值給today變數,則會發生錯誤。雖然列舉型別的實質是整數,但電腦還是會仔細檢查資料型別,禁止不同型別的資料互相賦值。另外,一般情況下,列舉型別是不能進行算術運算的。
c++中還有一種資料型別稱為結構(structure)型別,它允許使用者自定義一種資料型別,並且把描述該型別的各種資料型別一一整合到其中。把描述該型別的各種資料型別稱為這個結構型別的成員資料型別。定義結構型別的語法格式為:
struct 結構型別名
;
和定義列舉型別類似,定義結構型別的位置必須在首次使用該型別名之前,否則程式將無法識別該型別。要注意,定義完結構型別後的分號是必不可少的,否則將會引起錯誤。比如定義乙個學生型別,可以寫作:
struct student
;
這時候就有了乙個新的資料型別稱為student。我們要用這個型別來定義乙個變數並可以依次對它的成員資料進行初始化:
student s1=;
這樣就有了乙個student型別的變數s1.如果要引用結構型別內部的資料成員,我們用「.」來操作,稱為成員操作符。例如s1.age=22等等。
自定義資料型別
include include using namespace std typedef double weight,tall struct student int main cout for int i 0 i 4 i return 0 貼上正確的輸出 這裡tall和weight都是自己可以輸入的 ...
自定義資料型別 列舉型別
學習了乙個月c語言,卻從來沒有更新過部落格,沒有總結的學習是不完整的。好了,其實我是走c 方向的,就提前看了c 的有關內容。c 除了和c語言一樣常用的資料型別,他們還有允許使用者自己來設計的一些資料型別,比如列舉型資料,結構型資料和鍊錶。我就簡單的總結下列舉型別。列舉型別允許使用者自己來定義一種資料...
自定義資料型別 結構型別
c 中自定義資料型別還有一種稱為結構型別,並且把該型別的各種資料型別一一整合到其中。學號 型別 姓名 字串 學生年齡 整型 院系 字串 平均成績 浮點型 每個學生的資訊成為了乙個整體,雜亂的資料和每個學生一一對應了起來,方便管理。如果需要建立學生型別,就可以這樣寫。include using nam...