四 學習筆記 c語言基礎 結構體

2021-09-26 09:43:45 字數 874 閱讀 6339

1.在c語言中,可以使用結構體(struct)來存放一組不同型別的資料。結構體的定義形式為:

struct stu
結構體也是一種資料型別,它由程式設計師自己定義,可以包含多個其他型別的資料。

結構體是一種自定義的資料型別,是建立變數的模板,不占用記憶體空間;結構體變數才包含了實實在在的資料,需要記憶體空間來儲存。

2.結構體陣列

struct stuclass[2] = ,

}

3.結構體指標

結構體變數名和陣列名不同,陣列名在表示式中會被轉換為陣列指標,而結構體變數名不會,無論在任何表示式中它表示的都是整個集合本身,要想取得結構體變數的位址,必須在前面加&。

int main()

;struct stu stu1 = ;

struct stu *pstu = &stu1;

printf("%s\n", stu1.name);

printf("%s\n", (*pstu).name);

//或者

printf("%s\n", pstu->name);

}

結構體指標獲取結構體成員寫法:

1)(*pstu).name) 2) pstu->name->是乙個新的運算子,可以通過結構體指標直接取得結構體成員;這也是->在c語言中的唯一用途。

4.結構體指標作為函式引數

結構體變數名代表的是整個集合本身,作為函式引數時傳遞的整個集合,也就是所有成員,而不是像陣列一樣被編譯器轉換成乙個指標。如果結構體成員較多,尤其是成員為陣列時,傳送的時間和空間開銷會很大,影響程式的執行效率。所以最好的辦法就是使用結構體指標,這時由實參傳向形參的只是乙個位址,非常快速。

c語言 結構體學習筆記

一般形式 struct 結構體名 示例struct student 注意最後的分號2.1.先宣告結構體型別,再定義該型別的變數示例 struct student student1,student2 2.2.在宣告型別的同時定義變數 一般形式 struct 結構體名變數名表列 示例struct stu...

C語言學習筆記 結構體

1 結構體定義 結構體是將不同型別的資料按照一定的功能需求進行整體封裝,封裝的資料型別與大小均可以由使用者指定。2 結構體宣告 宣告乙個結構體型別的一般形式為 struct 結構體名 例如 struct book 注意 結構體名 的命名規範是全部使用大寫字母。3 定義結構體變數 定義結構體型別變數有...

C語言學習筆記 結構體

struct stu 順帶宣告 在結構體宣告的最後的分號前加stu1,stu2這樣的變數名,不需要寫結構體的名字。利用結構體名來宣告變數 struct stu stu3 struct stu stu1,stu2,stu3 這樣的語句中struct stu就可以理解成變數宣告前的int,double等...