搜文章
推荐 原创 视频 Java开发 iOS开发 前端开发 JavaScript开发 Android开发 PHP开发 数据库 开发工具 Python开发 Kotlin开发 Ruby开发 .NET开发 服务器运维 开放平台 架构师 大数据 云计算 人工智能 开发语言 其它开发
Lambda在线 > 编程范 > 【编程经验】共用体的定义和使用

【编程经验】共用体的定义和使用

编程范 2018-05-09

点击蓝字

共用体的定义和使用

在 C 语言中,允许几种不同类型的变量存放到同一段内存单元中,也就是使用覆盖技术,几个变量互 相覆盖。这种几个不同的变量共同占用一段内存的结构,被称为共用体类型结构,简称共用体。一般定义 形式为: 


union 共用体名 

数据类型 成员名 1; 
数据类型 成员名 2; 
...... 
数据类型 成员名 n; 
}变量名表列; 


只有先定义了共用体变量,才能在后续的程序中引用它。不能直接引用共用体变量,而只能引用共用 体变量中的成员。

引用方法如下: 

共用体变量名.成员名 。



共用体类型数据具有以下特点:

同一个内存段可以用来存放几种不同类型的成员,但是在每一瞬间只能存放其中的一种,而不是同时 存放几种。换句话说,每一瞬间只有一个成员起作用,其他的成员不起作用,即不是同时都存在和起作用的。 




#include<stdio.h>

union INFO

{

        int a;

        int b;

        int c;

};

int main()

{

        union INFO A;

        A.a=1;

        A.b=2;

        A.c=3;

        printf("a:%d\n",A.a);

        printf("b:%d\n",A.b);

        printf("c:%d\n",A.c);

        return 0;

}


运行结果为:

a:3

b:3

c:3



不能对共用体变量名赋值,也不能企图引用变量名来得到一个值,并且,不能在定义共用体变量时对 它进行初始化。

 
不能把共用体变量作为函数参数, 也不能是函数返回共用体变量, 但可以使用指向共用体变量的指针。 共用体类型可以出现在结构体类型的定义中,也可以定义共用体数组。反之,结构体也可以出现在共 用体类型的定义中,数组也可以作为共用体的成员。



点击“阅读原文”去阅读原文


版权声明:本站内容全部来自于腾讯微信公众号,属第三方自助推荐收录。《【编程经验】共用体的定义和使用》的版权归原作者「编程范」所有,文章言论观点不代表Lambda在线的观点, Lambda在线不承担任何法律责任。如需删除可联系QQ:516101458

文章来源: 阅读原文

相关阅读

关注编程范微信公众号

编程范微信公众号:dotcpp

编程范

手机扫描上方二维码即可关注编程范微信公众号

编程范最新文章

精品公众号随机推荐