在c語言中複雜資料型別大體分為四類:基本型別;指標型別;構造型別;空型別;而目前為止我們學到的有基本型別和構造型別。下面是我總結的資料型別模式。
基本型別:由整數型int、浮點型、字元型char組成。而浮點型又分為單精度型float和雙精度型double。這些都是基本的資料型別,在最開始基礎到c語言時就能掌握的,前幾天學習的重點就是構造型別。
構造型別:由陣列、構造型struct、聯合型union、列舉型enum。
陣列在之前已經學過,這裡就重點介紹構造型別、聯合型和列舉型。
構造型struct格式為:
strcut 結構名;
然後我們要宣告結構體的變數,格式為: struct 結構名 結構變數1, 結構變數2 ;(結構變數之間用逗號隔開)
接著就是訪問結構體變數的成員,格式為: 結構變數名.成員名。
下面我們定義乙個簡單的結構型語言
#include
#include
struct humanperson1;
struct animalanimal1;
int main(void)
接下來就是共用體,共用體和結構體格式上的區別就是將struct變為union。雖然定義形式相似,但是它們的含義有所不同。結構體變數所佔的記憶體長度一般等於各成員佔的記憶體長度之和,每個成員分別占有自己的記憶體單元。而共用體變數所佔的記憶體長度等於最長的成員長度。在共用體中起作用的是最後乙個存放的成員,在存入乙個新成員後,原有的成員就失去了作用。
列舉型別 格式為: enum 列舉名;
c語言編譯器實際上把列舉元素當做是整型常數來處理。當遇到列舉元素列表時,編譯器就把其中第乙個元素賦值為0,第
二、第三以此賦值為1,2~~~~。其中值得注意的是列舉中的每個成員(識別符號)結束符是」,「 而不是」;「。初始化時可以賦負數,以後的列舉元素仍依次加1。
指正型別尚未涉及,在學習後會及時總結。
C語言複雜資料型別
1 結構體 一 結構體的三種定義方式 方式一 結構體標準寫法 struct person struct person personnomal 方式二 struct person myperson 定義結構體的同時,初始化乙個person 結構體 struct person personnomal 定...
C複雜資料型別
結構體 1 表示更豐富的複雜型別 以後類這個概念的 2 內部屬性定義的順序 不影響使用,但是會影響記憶體分配 3 關鍵知識點在於記憶體大小的對齊問題。structstudent 聯合體 1 同乙個記憶體區域可以存放不同資料型別 非常少見 2 內部屬性的定義不影響使用也不影響記憶體分配 3 操作了乙個...
複雜資料型別
1 在c語言中,除了之前學到的基本資料型別 整型,浮點型,字元型 外,還有指標型別和構造型別 結構型,聯合型,列舉型 2 結構體型別,用於把不同型別的資料組合成乙個集合體,宣告格式 struct 結構名 例如 includestruct students void main 結構體的特點是 表示更豐...