共用體簡介

   有時想用同一段內存單元存放不同類型的變量,在C語言中提供了一種使幾個不同類型的變量共享同一段內存的結構,稱爲“共用體”類型的結構。

    定義共用體類型變量的一般形式爲:

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

例如:

    union Data
    {
        int i;
        char ch;
        float f;
     } a, b, c;

也可以將類型聲明與變量定義分開:

    union Data
    {
        int i;
        char ch;
        float f;
     };
     union Data a, b, c;

    下面介紹共用體類型的一些特點:

    1.共用體變量所佔的內存長度等於最長的成員的長度。

    2.不能引用共用體變量,只能引用共用體變量的成員。

    3.在共用體變量中只能存放一個值。

    4.對共用體變量初始化方式有以下兩種

    union Data a={16};    //對第一個成員i初始化
    union Data b={.ch='L'};    //對指定的一個成員ch初始化

    5.共用體變量中起作用的成員是最後一次被賦值的成員。

    6.不能對共用體變量名賦值,也不能企圖引用變量名來得到一個值。但是允許同類型的共同體變量互相賦值。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章