結構與聯合體是c語言中就已經存在的資料型別。c++語言對它們進行了擴充套件,最大的變化是允許在結構和聯體中定義成員函式。
1 #include2using
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 #include2using
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 結構也是一些值得的集合,這些值稱為它的成員,但乙個結構的各個成員可能長度不同,故不能使用下標...