最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

淺談C語言共用體和與結(jié)構(gòu)體的區(qū)別

 更新時(shí)間:2017年02月06日 09:44:33   投稿:jingxian  
下面小編就為大家?guī)硪黄獪\談C語言共用體和與結(jié)構(gòu)體的區(qū)別。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧

共用體與結(jié)構(gòu)體的區(qū)別

共用體:

使用union 關(guān)鍵字

共用體內(nèi)存長度是內(nèi)部最長的數(shù)據(jù)類型的長度。

共用體的地址和內(nèi)部各成員變量的地址都是同一個(gè)地址

結(jié)構(gòu)體大?。?

結(jié)構(gòu)體內(nèi)部的成員,大小等于最后一個(gè)成員的偏移量+最后一個(gè)成員大小+末尾的填充字節(jié)數(shù)。

結(jié)構(gòu)體的偏移量:某一個(gè)成員的實(shí)際地址和結(jié)構(gòu)體首地址之間的距離。

結(jié)構(gòu)體字節(jié)對齊:每個(gè)成員相對于結(jié)構(gòu)體首地址的偏移量都得是當(dāng)前成員所占內(nèi)存大小的整數(shù)倍,如果不是會(huì)在成員前面加填充字節(jié)。結(jié)構(gòu)體的大小是內(nèi)部最寬的成員的整數(shù)倍。

共用體

#include <stdio.h>
//gcc讓不同類型的變量共享內(nèi)存地址 ,同一時(shí)間只有一個(gè)成員有效
union data{ 
  int a;
  char b;
  int c;
};


int main(){
  union data data_1 = {1};//初始化時(shí)只填寫一個(gè)值。(同一時(shí)間只有一個(gè)成員有效)
  data_1.b = 'c';
  data_1.a = 10;//后賦值的才有效。前面的賦值被覆蓋
  //打印地址,發(fā)現(xiàn)指向同一個(gè)地址
  printf("%p\n%p\n%p\n",&data_1.a,&data_1.a,&data_1.a);
  return 0;
}

以上這篇淺談C語言共用體和與結(jié)構(gòu)體的區(qū)別就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • C++交換指針實(shí)例

    C++交換指針實(shí)例

    這篇文章主要介紹了C++交換指針實(shí)例,針對C與C++交換指針的方法進(jìn)行了較為詳細(xì)的對比分析,非常具有實(shí)用價(jià)值,需要的朋友可以參考下
    2014-10-10
  • C++中可以接受任意多個(gè)參數(shù)的函數(shù)定義方法(詳解)

    C++中可以接受任意多個(gè)參數(shù)的函數(shù)定義方法(詳解)

    下面小編就為大家?guī)硪黄狢++中可以接受任意多個(gè)參數(shù)的函數(shù)定義方法(詳解)。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2016-10-10
  • C語言詳細(xì)講解樹狀數(shù)組與線段樹

    C語言詳細(xì)講解樹狀數(shù)組與線段樹

    顧名思義,樹狀數(shù)組就是用數(shù)組來模擬樹形結(jié)構(gòu)唄。那么衍生出一個(gè)問題,為什么不直接建樹,因?yàn)闃錉顢?shù)組能處理的問題就沒必要建樹。線段樹是一種二叉搜索樹,與區(qū)間樹相似,它將一個(gè)區(qū)間劃分成一些單元區(qū)間,每個(gè)單元區(qū)間對應(yīng)線段樹中的一個(gè)葉結(jié)點(diǎn)
    2022-04-04
  • C語言結(jié)構(gòu)體內(nèi)存對齊詳解

    C語言結(jié)構(gòu)體內(nèi)存對齊詳解

    大家好,本篇文章主要講的是C語言結(jié)構(gòu)體內(nèi)存對齊詳解,感興趣的同學(xué)趕快來看一看吧,對你有幫助的話記得收藏一下
    2022-01-01
  • VC中刪除類的兩種操作方法

    VC中刪除類的兩種操作方法

    這篇文章主要介紹了VC中刪除類的兩種操作方法,較為詳細(xì)的描述了在VC中實(shí)現(xiàn)刪除類的具體步驟,非常具有實(shí)用價(jià)值,需要的朋友可以參考下
    2015-05-05
  • C語言詳細(xì)講解位運(yùn)算符的使用

    C語言詳細(xì)講解位運(yùn)算符的使用

    C語?既具有?級(jí)語?的特點(diǎn),?具有低級(jí)語?的特性,如?持位運(yùn)算就是其具體體現(xiàn)。這是因?yàn)?,C語?最初是為取代匯編語?設(shè)計(jì)系統(tǒng)軟件?設(shè)計(jì)的,因此C語?必須?持位運(yùn)算等匯編操作。位運(yùn)算就是對字節(jié)或字內(nèi)的?進(jìn)制數(shù)位進(jìn)?測試、抽取、設(shè)置或移位等操作
    2022-04-04
  • 一篇文章教你3分鐘如何發(fā)布Qt程序

    一篇文章教你3分鐘如何發(fā)布Qt程序

    這篇文章主要給大家介紹了關(guān)于教你3分鐘如何發(fā)布Qt程序的相關(guān)資料,文中通過實(shí)例代碼結(jié)束的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-08-08
  • C語言實(shí)現(xiàn)計(jì)算樹的深度的方法

    C語言實(shí)現(xiàn)計(jì)算樹的深度的方法

    這篇文章主要介紹了C語言實(shí)現(xiàn)計(jì)算樹的深度的方法,針對數(shù)據(jù)結(jié)構(gòu)中樹進(jìn)行操作的方法,在算法設(shè)計(jì)中比較常見,需要的朋友可以參考下
    2014-09-09
  • 一文詳解C++子類函數(shù)為什么不能重載父類函數(shù)

    一文詳解C++子類函數(shù)為什么不能重載父類函數(shù)

    這篇文章主要介紹了一文詳解C++子類函數(shù)為什么不能重載父類函數(shù),文章圍繞主題展開詳細(xì)的內(nèi)容戒殺,具有一定的參考價(jià)值,需要的朋友可以參考一下
    2022-09-09
  • C++表達(dá)式new與delete知識(shí)詳解

    C++表達(dá)式new與delete知識(shí)詳解

    這篇文章主要為大家詳細(xì)介紹了C++表達(dá)式new與delete知識(shí)點(diǎn),學(xué)習(xí)如何動(dòng)態(tài)創(chuàng)建對象,動(dòng)態(tài)創(chuàng)建的對象與一般對象的區(qū)別,動(dòng)態(tài)創(chuàng)建的對象的初始化以及釋放動(dòng)態(tài)分配的內(nèi)存等知識(shí)點(diǎn),感興趣的朋友可以參考一下
    2016-05-05

最新評(píng)論

平武县| 鄂托克前旗| 修文县| 神池县| 永德县| 肃南| 正安县| 龙陵县| 大渡口区| 常宁市| 曲松县| 石狮市| 毕节市| 长汀县| 渑池县| 襄汾县| 金坛市| 建宁县| 安泽县| 辽阳市| 天峨县| 霍州市| 延边| 太康县| 安西县| 阳谷县| 陆河县| 奉化市| 武定县| 景德镇市| 平湖市| 江永县| 三河市| 赞皇县| 正宁县| 封丘县| 修水县| 黑水县| 永济市| 宝兴县| 错那县|