C 中聯合體(union)的使用

2022-05-24 22:03:15 字數 666 閱讀 3078

1

typedef union para

2np;

11}npara;

12//

或者如下所示

13union para

14np;

23};

24typedef union para npara;

2526

//詳細可以參看typedef的用法,本文主要講解union的用法,不再贅述

union聯合體的用法:

例如利用typedef了以後,我們可以這樣宣告聯合體物件

npara nlpara;  //呼叫的時候可以採用  nlpara.np.a;

或者宣告聯合體指標,

npara *pointer;//但是僅僅宣告了乙個指標,指標並沒有初始化,沒有指向確定的物件,此時除錯**會出現指標錯☞的情況。

所以要對指標進行初始化,在c++中可以這樣:

pointer=new npara;//即令新建的聯合體物件賦值給當前指標,

我們知道new 和delete一般是相互依存的,在程式結尾處,可以採用

if(null!=pointer)

delete pointer;

pointer=null;

另外如果在建構函式中新建了乙個指標物件,在析構函式中要delete掉。

C語言中聯合體union的使用

本文編輯整理自 一 前言 聯合體 union 與 結構體 struct 有一些相似之處。但兩者有本質上的不同。在結構體中,各成員有各自的記憶體空間,乙個結構變數的總長度是各成員長度之和 而在 聯合 中,各成員共享一段記憶體空間,乙個聯合變數的長度等於各成員中最長的長度 應該說明的是,這裡所謂的共享不...

C語言中聯合體union的使用

一 前言 聯合體 union 與 結構體 struct 有一些相似之處。但兩者有本質上的不同。在結構體中,各成員有各自的記憶體空間,乙個結構變數的總長度是各成員長度之和 而在 聯合 中,各成員共享一段記憶體空間,乙個聯合變數的長度等於各成員中最長的長度 應該說明的是,這裡所謂的共享不是指把多個成員同...

聯合體union的使用

1.聯合體union的基本特性 和struct的同與不同 union,中文名 聯合體 共用體 在某種程度上類似結構體struct的一種資料結構,共用體 union 和結構體 struct 同樣可以包含很多種資料型別和變數。不過區別也挺明顯 結構體 struct 中所有變數是 共存 的 優點是 有容乃...