2019-11-27

共用體有時(shí)也被稱為聯(lián)合或者聯(lián)合體瓤荔,這也是 Union 這個(gè)單詞的本意。

結(jié)構(gòu)體和共用體的區(qū)別在于:結(jié)構(gòu)體的各個(gè)成員會(huì)占用不同的內(nèi)存钥组,互相之間沒(méi)有影響输硝;而共用體的所有成員占用同一段內(nèi)存,修改一個(gè)成員會(huì)影響其余所有成員程梦。


結(jié)構(gòu)體占用的內(nèi)存大于等于所有成員占用的內(nèi)存的總和(成員之間可能會(huì)存在縫隙)点把,共用體占用的內(nèi)存等于最長(zhǎng)的成員占用的內(nèi)存。共用體使用了內(nèi)存覆蓋技術(shù)屿附,同一時(shí)刻只能保存一個(gè)成員的值郎逃,如果對(duì)新的成員賦值,就會(huì)把原來(lái)成員的值覆蓋掉拿撩。


共用體也是一種自定義類型衣厘,可以通過(guò)它來(lái)創(chuàng)建變量,例如:

union data{

int n;

char ch;

double f;

};

union data a, b, c;

上面是先定義共用體压恒,再創(chuàng)建變量影暴,也可以在定義共用體的同時(shí)創(chuàng)建變量:

union data{

int n;

char ch;

?double f;

} a, b, c;

如果不再定義新的變量,也可以將共用體的名字省略:

union{

int n;

char ch;

double f;

} a, b, c;

共用體 data 中探赫,成員 f 占用的內(nèi)存最多型宙,為 8 個(gè)字節(jié),所以 data 類型的變量(也就是 a伦吠、b妆兑、c)也占用 8 個(gè)字節(jié)的內(nèi)存,請(qǐng)看下面的演示:

純文本復(fù)制

#include <stdio.h>

union data{

?int n;

?char ch;

?short m;

};


int main(){

union data a;

printf("%d, %d\n", sizeof(a), sizeof(union data) );

a.n = 0x40;

printf("%X, %c, %hX\n", a.n, a.ch, a.m);

a.ch = '9';

printf("%X, %c, %hX\n", a.n, a.ch, a.m);

a.m = 0x2059;

printf("%X, %c, %hX\n", a.n, a.ch, a.m);

a.n = 0x3E25AD54;

?printf("%X, %c, %hX\n", a.n, a.ch, a.m);


?return 0;}

運(yùn)行結(jié)果:

4, 4

40, @, 40

39, 9, 39

2059, Y, 2059

3E25AD54, T, AD54

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末毛仪,一起剝皮案震驚了整個(gè)濱河市搁嗓,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌箱靴,老刑警劉巖腺逛,帶你破解...
    沈念sama閱讀 211,194評(píng)論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異衡怀,居然都是意外死亡棍矛,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,058評(píng)論 2 385
  • 文/潘曉璐 我一進(jìn)店門(mén)抛杨,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)够委,“玉大人,你說(shuō)我怎么就攤上這事怖现∽旅保” “怎么了?”我有些...
    開(kāi)封第一講書(shū)人閱讀 156,780評(píng)論 0 346
  • 文/不壞的土叔 我叫張陵屈嗤,是天一觀的道長(zhǎng)潘拨。 經(jīng)常有香客問(wèn)我,道長(zhǎng)恢共,這世上最難降的妖魔是什么战秋? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 56,388評(píng)論 1 283
  • 正文 為了忘掉前任,我火速辦了婚禮讨韭,結(jié)果婚禮上脂信,老公的妹妹穿的比我還像新娘。我一直安慰自己透硝,他們只是感情好狰闪,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,430評(píng)論 5 384
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著濒生,像睡著了一般埋泵。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書(shū)人閱讀 49,764評(píng)論 1 290
  • 那天丽声,我揣著相機(jī)與錄音礁蔗,去河邊找鬼。 笑死雁社,一個(gè)胖子當(dāng)著我的面吹牛浴井,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播霉撵,決...
    沈念sama閱讀 38,907評(píng)論 3 406
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼磺浙,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了徒坡?” 一聲冷哼從身側(cè)響起撕氧,我...
    開(kāi)封第一講書(shū)人閱讀 37,679評(píng)論 0 266
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎喇完,沒(méi)想到半個(gè)月后伦泥,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,122評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡何暮,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,459評(píng)論 2 325
  • 正文 我和宋清朗相戀三年奄喂,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片海洼。...
    茶點(diǎn)故事閱讀 38,605評(píng)論 1 340
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡跨新,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出坏逢,到底是詐尸還是另有隱情域帐,我是刑警寧澤,帶...
    沈念sama閱讀 34,270評(píng)論 4 329
  • 正文 年R本政府宣布是整,位于F島的核電站肖揣,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏浮入。R本人自食惡果不足惜龙优,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,867評(píng)論 3 312
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望事秀。 院中可真熱鬧彤断,春花似錦、人聲如沸易迹。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 30,734評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)睹欲。三九已至供炼,卻和暖如春一屋,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背袋哼。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 31,961評(píng)論 1 265
  • 我被黑心中介騙來(lái)泰國(guó)打工冀墨, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人先嬉。 一個(gè)月前我還...
    沈念sama閱讀 46,297評(píng)論 2 360
  • 正文 我出身青樓轧苫,卻偏偏與公主長(zhǎng)得像楚堤,于是被迫代替她去往敵國(guó)和親疫蔓。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,472評(píng)論 2 348

推薦閱讀更多精彩內(nèi)容

  • 在C語(yǔ)言中,五種基本數(shù)據(jù)類型存儲(chǔ)空間長(zhǎng)度的排列順序是: A)char B)char=int<=float C)ch...
    夏天再來(lái)閱讀 3,333評(píng)論 0 2
  • 1.union共用體占最大的數(shù)據(jù)類型的大小 共用體運(yùn)行到哪就存的是哪個(gè)數(shù)據(jù) 共用體用于數(shù)據(jù)臨時(shí)處理 2.枚舉 en...
    長(zhǎng)光19期毛悅?cè)?/span>閱讀 109評(píng)論 0 0
  • 1127正則表達(dá)式與內(nèi)存管理 內(nèi)存管理:內(nèi)存分為棧區(qū)間和堆區(qū)間摧玫,棧區(qū)間的內(nèi)存是系統(tǒng)自動(dòng)申請(qǐng)釋放范抓;堆上的內(nèi)存需要程序...
    孤獨(dú)又燦爛的鯨魚(yú)閱讀 168評(píng)論 0 0
  • 內(nèi)存管理 1.內(nèi)存管理基礎(chǔ)() 內(nèi)存分為棧區(qū)間和堆區(qū)間银锻,棧區(qū)間的內(nèi)存是系統(tǒng)自動(dòng)申請(qǐng)自動(dòng)釋放堆上的內(nèi)存需要程序通過(guò)調(diào)...
    KIKIu閱讀 195評(píng)論 0 0
  • 上一節(jié)中我們知道了什么是富貴包,同時(shí)從日常體態(tài)滚躯、甚至于睡眠姿態(tài)以及陰瑜伽的療愈,給大家介紹了富貴包療愈的“基本功...
    猴行者演懿閱讀 2,155評(píng)論 0 2