1. 共用体

2. 常见问题

2.1. 字节对齐

当说明一个共用体变量时,系统分配给它的内存的大小是:

  1. 当最大的变量的大小 <= 最大类型的大小, 是最大类型的大小。

    ```cpp union TestUnion { int a;// 4 byte float b;//4 byte char c;//1 byte };

输出结果是:4


2. 当最大的变量的大小 >= 最大类型的大小,是最大类型的整数倍。(要考虑内存对齐)

```cpp
union TestUnion
{
    int a;// 4 byte
    float b;//4 byte
    char c[12];//12 byte
    double d;//8 byte
};

输出结果是:16
Copyright © ershouche-FE 2019 all right reserved,powered by Gitbook文件修订时间: 2022-02-28 11:11:36

results matching ""

    No results matching ""