[开发工具] Union(联合体)使用介绍

[复制链接]
834|5
 楼主| Puremr 发表于 2020-10-25 19:43 | 显示全部楼层 |阅读模式
联合体(union)
数据类型的一种, 允许您在相同的内存位置存储不同的数据类型。您可以定义一个带有多成员的共用体,但是任何时候只能有一个成员带有值。共用体提供了一种使用相同的内存位置的有效方式。
一般应用场景为节省内存。

 楼主| Puremr 发表于 2020-10-25 19:45 | 显示全部楼层
本帖最后由 Puremr 于 2020-10-25 19:46 编辑

定义
union A
{
        char i;
        int j;
        double k;
}b;


 楼主| Puremr 发表于 2020-10-25 19:47 | 显示全部楼层
访问

int main() {
        ios::sync_with_stdio(false);
        b.i = 'a';
        cout << b.i << endl;
        cout << b.j << endl;
        cout << b.k << endl;
        cout << endl;

        b.j = 10;
        cout << b.i << endl;
        cout << b.j << endl;
        cout << b.k << endl;
        cout << endl;

        b.k = 1.22342;
        cout << b.i << endl;
        cout << b.j << endl;
        cout << b.k << endl;

        return 0;
}


自己的灌饼 发表于 2020-10-29 09:29 | 显示全部楼层
现在的C语言,都交给老师了,忘记了,哎... ....
wahahaheihei 发表于 2020-10-29 09:39 | 显示全部楼层
楼主用的C++啊。
答案很长吧 发表于 2020-10-29 09:44 | 显示全部楼层
单片机的C语言,这样用是不是也是可以的?好像是不支持的。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

24

主题

215

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部