最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(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)合體的評論 (共 條)

分享到微博請遵守國家法律
佳木斯市| 玉屏| 佛坪县| 宁武县| 桂东县| 临朐县| 沙坪坝区| 成安县| 双鸭山市| 那坡县| 白河县| 左云县| 莱西市| 瓦房店市| 淳安县| 西贡区| 襄汾县| 鄱阳县| 额济纳旗| 禹城市| 泗洪县| 克什克腾旗| 濮阳市| 龙陵县| 环江| 称多县| 福海县| 肃宁县| 江山市| 长海县| 高邮市| 海原县| 枣强县| 临沂市| 竹山县| 张家界市| 黑水县| 新龙县| 永济市| 宕昌县| 宣汉县|