自定義型別(結構體,列舉,聯合,位段)

2021-08-11 09:34:58 字數 427 閱讀 7001

一.結構體

c語言提供了兩種聚合資料型別,分別為陣列和指標,陣列是相同型別元素的集合,它的每個元素是通過下標引用或指標間接訪問的。結構是不同資料型別的集合,對於結構的訪問不能通過下標去訪問,因為乙個結構的成員可能長度不同。結構並不是它自身成員的陣列,結構變數屬於標量型別。

舉例:乙個簡單的結構宣告

struct tagx;
宣告乙個變數x,tag稱為結構標籤,標籤宣告了一種模式,用於宣告未來的變數。包含三個成員,字元變數a,整型變數b和雙精度浮點型c.

struct tagy[10],*z;
這個宣告建立了y和z,y是乙個陣列,它包含了10個結構,z是乙個指標,它指向這個型別的結構。

自定義型別 結構體 列舉 聯合

結構體 所謂結構體,就是將一大堆值放在一起,建立乙個新的型別,這些成員可以是不同型別的變數。struct tag variable list tag 要求 1.見名知意 2.可以省略 3.不建議省略 member list c語言中,不能為空 variable list 變數列表,可以省略,建議省略...

自定義型別 結構體,列舉,聯合

首先先說一下c語言的資料型別,其框架型別如圖所示 今天主要說一下結構體,列舉,聯合這三種自定義型別。1,結構體 1.1 結構體的宣告 結構體是一些值的集合,這些值稱為成員變數,結構體的每個成員可以是不同型別得變數。1 結構體的成員 結構體的成員可以是標量,陣列,指標,甚至是其他結構體。2 結構體的宣...

自定義型別 結構體,列舉,聯合

結構體的宣告 struct tag variable list 例如描述乙個學生 struct stu 分號不能丟特殊的宣告 在宣告結構的時候,可以不完全的宣告。比如 匿名結構體型別 struct x struct a 20 p 警告 編譯器會把上面的兩個宣告當成完全不同的兩個型別。所以是非法的。結...