C 結構和聯合

2022-05-18 12:20:08 字數 889 閱讀 7570

結構與聯合體是c語言中就已經存在的資料型別。c++語言對它們進行了擴充套件,最大的變化是允許在結構和聯體中定義成員函式。

1 #include2

using

namespace

std;

3struct

room;

7struct

student

14};

15int

main(),,};

17 student s(18,80);//

結構體的建構函式

18 cout<<"

the rooms are:";

19 cout<0].floor<<"_"

<0].no<20 cout<<"

the student is

"<"_"

21 }

1、利用結構定義變數時,不需要帶上關鍵字struct

2、允許在struct中定義成員函式。預設訪問許可權為public

3、在struct中沒顯定義任何建構函式,那可以用{}進行初始化,如果定義了建構函式,則必須用建構函式的形式初始化。

聯合:多種變數共用乙個儲存空間,已達到節省空間的作用。

1 #include2

using

namespace

std;

3union testunion;

7int

main()

14 cout<15 cout16 pt->c = 'a'

;17 cout18for(int i =0;i21 cout<22 cout23delete

pt;24 }

view code

結構和聯合

聯合也是一種新的資料型別,它是一種特殊形式的變數。聯合說明和聯合變數定義與結構十分相似。其形式為 union 聯合名 聯合變數名 聯合表示幾個變數公用乙個記憶體位置,在不同的時間儲存不同的資料型別和不同長度的變數。下例表示說明乙個聯合a bc union a bc 再用已說明的聯合可定義聯合變數。例...

結構和聯合

char ptr ptr hello 可行 char str 32 str hello 不可行 include include include 宣告結構體 struct student student結構體名 否則是定義,不是宣告 int age char int main 初始化結構體變數 str...

C和指標(7)結構和聯合

第10章 1 聚合資料型別能夠同時儲存超過乙個的單獨資料。c提供了兩種型別的聚合資料型別,陣列和結構。陣列是相同型別的元素的集合,它的每個元素是通過下標引用或指標間接訪問來選擇的 因為陣列的元素長度相同 2 結構也是一些值得的集合,這些值稱為它的成員,但乙個結構的各個成員可能長度不同,故不能使用下標...