C語言基礎 結構體和聯合體

2021-08-30 19:46:51 字數 492 閱讀 1176

一、結構體

1、定義:結構體是多種資料型別混合在一起的資料型別,它是使用者自定義型別,需要使用者自己根據特定的需求自己定義。

2、定義結構體型別格式如下:

struct 結構體名

;struct 與結構體名合在一起構成了結構體型別,結構體名與變數名的命名規則一樣。

注意:在定義結構體型別時,struct不可以省略。struct和結構體名一起構成結構體型別。不要遺漏結構體外的分號,這是非常容易出錯的地方。

3、定義結構體變數

(1)先定義結構體型別,然後再定義結構體變數

假如定義了結構體型別student teacher,就可以使用該型別定義變數。例如定義teacher1和teacher2兩個結構體變數,**如下:struct teacher teacher1,teacher2;在定義了結構體變數之後,系統會為變數分配記憶體空間。

(2)在定義結構體型別時,同時定義結構體變數。

struct 結構體名

變數列表;

C 結構體和聯合體

結構體資料對齊問題 使用union定義的是聯合體 利用union可以用相同的儲存空間儲存不同型別的資料型別,從而節省記憶體空間。當訪問其內成員時可用 和 來直接訪問。當多個資料需要共享記憶體或者多個資料每次只取其一時,可以利用聯合體 union 在c programming language 一書中...

C 結構體 聯合體

結構體是特殊形態的類,與類的區別 結構體的預設訪問許可權是public,也就是說當你建立資料成員的時候,預設是屬於public類,存在的主要原因 與c語言保持相容。結構體 struct 學生資訊 include include include using namespace std struct s...

結構體和聯合體

結構體是一些值的集合,這些值成為它的成員。這和陣列有些類似。結構體和陣列最大的不同是,陣列的元素都是相同型別的,而結構體裡的成員可以具有不同的型別。陣列元素可以通過下標來訪問,而結構體成員長度可能不同,所以不能通過下標訪問。每個結構體成員都有自己的名字,所以結構體成員是通過名字訪問的。結構體變數屬於...