關於聯合體

2021-07-11 18:54:10 字數 454 閱讀 5192

一、聯合體

聯合體的每個成員共享一塊記憶體,這塊記憶體的大小就是聯合體占用記憶體的大小。這塊記憶體至少有其中占用記憶體最大成員的大小,有時候大於是因為有時候要考慮記憶體對齊。

二、聯合體的作用

1.  可以判斷平台屬於大端儲存還是小端儲存

2.  共享記憶體(程序間通訊)的時候可以使用

3.  在通訊程式中,有時候要傳送浮點型資料,為了方便操作,可以定乙個聯合體,聯合體的乙個成員為浮點數,乙個成員為長度為4的乙個字元型陣列。

這樣,在計算時可以用浮點數,傳送時,可以操作長度為4的字元型陣列,這四個陣列的每個元素構成了那個浮點數(假如sizeof(float)=4)。

因此,操作那個字元型陣列就相當於操作那個浮點數,操作那個浮點數就相當於操作那個陣列。

聯合體詳解

在c c 程式的編寫中,當多個基本資料型別或復合資料結構要占用同一片記憶體時,我們要使用聯合體 當多種型別,多個物件,多個事物只取其一時 我們姑且通俗地稱其為 n 選1 我們也可以使用聯合體來發揮其長處。首先看一段 union型別是共享記憶體的,以size最大的結構作為自己的大小,這樣的話,myun...

聯合體 位域結構體 聯合體的妙用

在c語言中,變數的定義是分配儲存空間的過程。一般的,每個變數都具有其獨有的儲存空間,那麼可不可以在同乙個記憶體空間中儲存不同的資料型別 不是同事儲存 呢?答案是可以的,使用聯合體就可以達到這樣的目的。聯合體也叫共用體,在c語言中定義聯合體的關鍵字是union。定義乙個聯合型別的一般形式為 union...

結構體聯合體

在c中,結構也是一種資料型別,可以使用結構變數,因此,象其它型別的變數一樣,在使用結構變數時要先對其定義。定義結構變數的一般格式為 struct 結構名 結構變數 結構名是結構的識別符號不是變數名。型別為第二節中所講述的五種資料型別 整型 浮點型 字元型 指標型和無值型 構成結構的每乙個型別變數稱為...