結構體和而聯合體的區別

兩者最大的區別是內存的使用

一 結構體struct

各成員各自擁有自己的內存,各自使用互不干擾,同時存在的,遵循內存對齊原則。一個struct變量的總長度

 等於所有成員的長度之和

二 聯合體union

各成員共用一塊內存空間,並且同時只有一個成員可以得到這塊內存的使用權(對該內存的讀寫)

各變量共用一個內存的首地址,因此聯合體比結構體更節約內存。一個union的總長度至少能容納最大成員變量,而且要滿足

所有成員變量類型大小的整數倍。不可以對聯合體變量直接賦值或者其他操作。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章