91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

c++中union的用法是什么

c++
小億
85
2023-12-09 02:07:52
欄目: 編程語言

在C++中,union是一種特殊的數據結構,允許在同一內存位置存儲不同的數據類型。它的用法如下:

  1. 節省內存:使用union可以節省內存,因為它只會為其中一個成員分配內存,而不是為每個成員都分配內存。

  2. 數據共享:union的成員共享同一塊內存,這意味著同一時間只能存儲一個成員的值。當一個成員被賦值后,它將覆蓋之前存儲的成員的值。

  3. 數據類型轉換:可以使用union進行數據類型轉換。例如,將一個float類型的值存儲在union中的一個成員,然后以int類型的方式讀取該值。

以下是一個示例,說明了如何使用union:

#include <iostream>
using namespace std;

union Data {
   int i;
   float f;
   char str[20];
};

int main() {
   Data data;
   
   cout << "Memory size occupied by data : " << sizeof(data) << endl;

   data.i = 10;
   cout << "data.i : " << data.i << endl;
   
   data.f = 220.5;
   cout << "data.f : " << data.f << endl;
   
   strcpy(data.str, "C++ Programming");
   cout << "data.str : " << data.str << endl;

   return 0;
}

輸出結果為:

Memory size occupied by data : 20
data.i : 10
data.f : 220.5
data.str : C++ Programming

在上面的示例中,我們定義了一個union Data,它有三個成員:i(整數類型)、f(浮點數類型)和str(字符數組類型)。我們可以看到,這三個成員共享同一塊內存,因此只能存儲其中一個成員的值。在main函數中,我們分別將整數、浮點數和字符串分配給union的成員,并打印它們的值。

0
昭平县| 抚宁县| 阜南县| 府谷县| 柘城县| 新昌县| 临西县| 安宁市| 邛崃市| 新巴尔虎右旗| 界首市| 图们市| 延寿县| 体育| 句容市| 怀化市| 高尔夫| 葫芦岛市| 荆州市| 富顺县| 台南县| 壶关县| 桐乡市| 崇礼县| 报价| 白水县| 墨玉县| 县级市| 金沙县| 新密市| 阿鲁科尔沁旗| 弋阳县| 辽源市| 高雄县| 商河县| 藁城市| 花垣县| 双江| 上高县| 江孜县| 尤溪县|