zoukankan      html  css  js  c++  java
  • 第二十四周项目7-读懂“共同体”

    运行下面的程序,并解释运行结果。
    #include <iostream>
    using namespace std;
    union un
    {
        int i;
        char c[4];
    };
    int main()
    {
        union un x;
        x.c[0]='A';
        x.c[1]='B';
        x.c[2]='C';
        x.c[3]='D';
        cout<<x.i<<endl;
        return 0;
    }


    #include <iostream>
    using namespace std;
    union un
    {
        int i;
        char c[4];
    };
    int main()
    {
        un x;
        x.c[0]='A';
        x.c[1]='B';
        x.c[2]='C';
        x.c[3]='D';
        cout<<x.c[2]<<endl;
        return 0;
    }
    

    通过watch窗观察:

    so:

    结构体的引入,用户可以方便定义新的数据类型,用成员变量来存储事物不同方面的特性。但是结构体每一个成员变量均需要占用一定的存储空间,与实际的要求存在一定的差距。引入的新的自定义数据类型共用体(union),很像结构体类型,有自己的成员变量,但是所有的成员变量占用同一段内存空间。对于共用体变量,在某一时间点上,只能存储其某一成员的信息。
    结构体是由不同数据类型组成的一个结构,存储空间是所有成员需要的空间的总和,结构成员是同时存在的。而共同体则是不同数据类型共享一个存储空间,空间的大小是能容纳共同体成员中的最大者。共同体成员的值不可能同时存在。

    @ Mayuko

  • 相关阅读:
    Arduino
    DTU
    现代信号处理与应用
    matlab学习记录
    列车准点节能操纵
    泊松过程
    序号生成算法odoo
    操作系统特性
    c语言中的变量
    xml中的四则运算与时间爱格式
  • 原文地址:https://www.cnblogs.com/mayuko/p/4567540.html
Copyright © 2011-2022 走看看