C基础-联合体-1-定义,初始化,赋值,使用

概念:
联合(union)是一种数据类型,它能在同一个内存空间中储存不同的数据类型(不是同时储存)。
其典型的用法是,设计一种表以储存既无规律、事先也不知道顺序的混合类型。使用联合类型的数组,其中的联合都大小相等,每个联合可以储存各种数据类型。

定义:
创建联合和创建结构的方式相同,需要一个联合模板和联合变量。
可以用一个步骤定义联合,也可以用联合标记分两步定义。
下面是联合体的三种定义方式:

1. 用联合标记分两步定
union hold
{
    int digit;
    double bigfl;
    char letter;
};

union hold fit;

(2,3步其实是一种类型)
2. 一个步骤定义联合
union hold //hold可以省略
{
    int digit;
    double bigfl;
    char letter;
}fit;

3. 一个步骤定义联合
union 
{
    int digit;
    double bigfl;
    char letter;
}fit;

初始化与赋值
3 种初始化的方法:
1. 把一个联合初始化为另一个同类型的联合;
2. 初始化联合的第1个元素;
3. 或者根据C99标准,使用指定初始化项目。

union hold valA;
valA.letter='R';  //赋值
union hold valB = valA;
union hold valC = {88};
union hold valD = {.bigfl=118.2}; //指定初始化项目

使用:
成员运算符 .
成员运算符和结构或联合名称一起使用,用来指定结构或联合的成员。
间接成员运算符 ->
间接成员运算符和指向结构或联合的指针一起使用,用来指明结构或联合的成员。
 

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值