zoukankan      html  css  js  c++  java
  • C++ 入门4 共用体

    =========C++ 入门4 ---- 共用体========

      共用体(union)是一种数据格式,它能存储不同的数据类型,但是只能一次使用其中一种数据类型。由于共用体每次只能存储一个值。因此它必须有足够大的空间来存储最大的成员,所以,共用体的长度为其最大成员的长度。

      共用体经常被用在,当数据项使用两种或者更多的格式(但不会同时使用)时,可以节省空间。比如,假设管理一个小商品目录,其中一些商品的ID为整数,而另一些的ID为字符串。这种情况下,可以这样做:

    #include <iostream>
    
    struct widge 
    {
        char brand[20];
        
        int type;
        union ID
        {
            long id_num;
            char id_char[];
        } id_val;
    };
    
    int main()
    {
        widge prize;
        
        std::cin >> prize.type;
        
        if(prize.type == 1){
            std::cin >> prize.id_val.id_num;//输入整形数字作为ID
        } else {
            std::cin >> prize.id_val.id_char;//输入字符串作为ID 
        } 
        
        if(prize.type == 1){
            std::cout << prize.id_val.id_num << std::endl;//输出整形ID 
        } else {
            std::cout << prize.id_val.id_char << std::endl;//输出字符串ID 
        } 
        
        return 0;
    }
  • 相关阅读:
    Python for Data Science
    Python for Data Science
    Python for Data Science
    Python for Data Science
    Python for Data Science
    Python for Data Science
    Python for Data Science
    Python for Data Science
    Python for Data Science
    软件工程实践总结
  • 原文地址:https://www.cnblogs.com/CocoonFan/p/2973279.html
Copyright © 2011-2022 走看看