五月天青色头像情侣网名,国产亚洲av片在线观看18女人,黑人巨茎大战俄罗斯美女,扒下她的小内裤打屁股

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

C語言干貨分享 | C語言的聯(lián)合體

2021-07-23 18:10 作者:C語言編程__Plus  | 我要投稿

我們知道結(jié)構(gòu)體(Struct)是一種構(gòu)造類型或復雜類型,它可以包含多個類型不同的成員。


在C語言 中,還有另外一種和結(jié)構(gòu)體非常類似的語法,叫做共用體(Union),它的定義格式為:

union 共用體名{ 成員列表 };

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

結(jié)構(gòu)體和共用體的區(qū)別在于:結(jié)構(gòu)體的各個成員會占用不同的內(nèi)存,互相之間沒有影響;而共用體的所

有成員占用同一段內(nèi)存,修改一個成員會影響其余所有成員。

結(jié)構(gòu)體占用的內(nèi)存大于等于所有成員占用的內(nèi)存的總和(成員之間可能會存在縫隙),共用體占用的內(nèi)

存等于最長的成員占用的內(nèi)存。共用體使用了內(nèi)存覆蓋技術(shù),同一時刻只能保存一個成員的值,如果對

新的成員賦值,就會把原來成員的值覆蓋掉。

運行結(jié)果:


2、結(jié)構(gòu)體冒號的用法

結(jié)構(gòu)體中的冒號表示位域,位域出現(xiàn)的原因是由于某些信息的存儲表示只需要幾個bit位就可以表示而不?需要一個完整的字節(jié),同時也是為了節(jié)省存儲空間和方便處理。

其表示形式為:

struct 位域結(jié)構(gòu)名

{

類型說明符位域名:位域長度

}

其表示形式為:

struct? bit_struct

{

int? bit1:3;

int? bit2:5;

int? bit3:7;

}data;

其中bit_struct表示位域結(jié)構(gòu)體,bit1、bit2、bit3表示對應(yīng)的位域,data表示位域結(jié)構(gòu)體定義的變量。整個位域結(jié)構(gòu)體占用2個字節(jié),bit1占3位,bit2占5位,bit1和bit2共用一個字節(jié),bit3占7位,獨占一個字節(jié)

運行結(jié)果:


3、聯(lián)合使用

舉一個MCP2518FD芯片的例子:先看一下CAN幀格式:


看不懂的小伙伴可以忽略:

另外,對現(xiàn)在我們的大多數(shù)朋友來說還是學編程技術(shù)最重要!栽一棵樹最好的時間是十年前,其次是現(xiàn)在。對于準備學習編程的小伙伴,如果你想更好的提升你的編程核心能力(內(nèi)功)不妨從現(xiàn)在開始!

微信公眾號:C語言編程學習基地

整理分享(多年學習的源碼、項目實戰(zhàn)視頻、項目筆記,基礎(chǔ)入門教程)

歡迎轉(zhuǎn)行和學習編程的伙伴,利用更多的資料學習成長比自己琢磨更快哦!



C語言干貨分享 | C語言的聯(lián)合體的評論 (共 條)

分享到微博請遵守國家法律
白山市| 五莲县| 中西区| 子洲县| 大丰市| 大名县| 山阳县| 开远市| 双峰县| 德清县| 新疆| 定陶县| 内黄县| 江阴市| 司法| 贵德县| 桂东县| 浦东新区| 三河市| 广灵县| 南部县| 固镇县| 留坝县| 胶南市| 中卫市| 阳高县| 上思县| 修水县| 昂仁县| 五河县| 舟山市| 隆安县| 阿勒泰市| 莱州市| 富源县| 卓资县| 博爱县| 甘洛县| 龙胜| 忻州市| 永嘉县|