靚麗時尚館

位置:首頁 > 健康生活 > 心理

union佔多少位元組

心理2.47W
union佔多少位元組

聯合體共佔 4 位元組空間。

聯合體,就是將幾種資料型別聯合起來的一種資料結構,但是它們共用一個空間。它們佔用的空間也是同一個地方,只是這些二進位制資料當你把它看成浮點型的時候,它是浮點數當你把它看成無符號整數的時候,就是無符號數,或者你把這些資料看成有符號的資料,那麼它就是有符號資料。

它既可以表示 Value,也可以修改其中的 Red、Green、Blue。但是也能發現這裡還有一個空閒的 1 個位元組,這是因為 Value 為四位元組,所以只能按照最大的空間申請記憶體空間(聯合體佔用的記憶體空間總是等於當中最大的一個數據型別的大小)。

聯合體(union)

當多個數據需要共享記憶體或者多個數據每次只取其一時,可以利用聯合體(union)。如:

1union U

2 {

3 char s[9]

4 int n

5 double d

6 }

s佔9位元組,n佔4位元組,d佔8位元組,因此其至少需9位元組的空間。然而其實際大小並不是9。

標籤:位元組 union