----------------------
asp.net+unity開發
、.net培訓
、期待與您交流! ----------------------
當乙個整體由多個陣列構成時,我們可以用陣列來表示這個整體,但是陣列有個特點:內部的每乙個元素都必須是相同型別的資料。
但是,在我們實際應用中,通常都需要用不同型別的資料來構成乙個整體。比如學生這個整體,可以由姓名、年齡、身高等資料構成。姓名可以是字串,年齡可以是整形,身高可以是浮點型。
為此,c語言專門提供了一種構造型別 —— 結構體,來解決上面的問題。它允許內部的元素是不同型別的。
結構體內部的元素,我們一般稱為「成員」。
struct 結構體名;
struct是關鍵字,是結構體型別標誌。
比如上面的,我們定義乙個學生:
struct student ;
定義結構體變數的方式有很多種。
先定義結構體型別,再定義變數:
struct student ;
struct student stu;
定義結構體型別的同時定義變數:
struct student stu;
我們也可以直接定義結構體型別變數,省略型別名:
struct stu;
而且,結構體的內部是可以包含別的結構體的:
struct date ;
struct student ;
有一點需要注意:定義結構體型別,只能說明了該型別的組成型別,並沒有給他分配儲存空間,就像系統不會給int型別本身分配儲存空間一樣,只有當定義屬於結構體型別的變數時,系統才會分配儲存空間給該變數。
結構體變數占用的記憶體空間是其成員所佔記憶體之和,而且各成員在記憶體中按定義的順序依次排列的。
如何初始化結構體呢?
struct student ;
struct student stu = ;
這裡需要注意的是:只能在定義變數的同時進行初始化賦值,初始化賦值和變數的定義不能分開:
//struct student stu;
//stu = ;
這樣的做法是錯誤的。
結構體的使用:
struct date ;
struct student ;
struct student stu;
stu.birthday.year = 1986;
stu.birthday.month = 9;
stu.birthday.day = 10;
一般我們可以連續使用運算子" . "來訪問最低一級的變數。
----------------------
asp.net+unity開發
、.net培訓
、期待與您交流! ----------------------
C語言之結構體
一 什麼是結構體 結構體是不同型別的資料組合成乙個有機整體。例如 學生的學號 姓名 性別 成績 位址 這些都是乙個學生的屬性,把這些屬性組織成乙個組合,組合中包含不同的資料型別,c和c 允許指定這樣的資料型別,稱為結構體。struct student 申明乙個結構體型別 struct是結構體申明的關...
C語言之結構體
在c語言中,可以使用結構體 struct 來存放一組不同型別的資料。結構體的定義形式為 struct 結構體名 結構體是一種集合,它裡面包含了多個變數或陣列,它們的型別可以相同,也可以不同,每個這樣的變數或陣列都稱為結構體的成員 member 請看下面的乙個例子 struct stu stu 為結構...
C語言之結構體
在c語言中,有一種型別聽著很任性,叫做自定義型別。顧名思義,這種型別是程式設計師自己定義的一種型別,它和陣列很相似,但也有一些區別。自定義型別包含以下幾種 結構體 列舉 聯合 結構體就是將具有不同或相同的型別放在一起的聚合型別。可能聽著有些像順口溜,上一段 捋一捋。struct peo a 在 中我...