联合体、枚举体初步了解及运用

本文详细介绍了联合体和枚举体的概念及其使用方法。联合体是一种特殊的数据结构,其中所有成员共享同一段内存空间;而枚举体则用于定义一组命名的整数常量。文章通过实例演示了它们的基本用法及注意事项。

当然,当学过结构体后,还有两种简单的联合体,枚举体,只要知道基本的语法问题,一切都不是问题。

联合体:

简单的定义样式1:

赋值操作类似于结构体如下:

我们打印下看看:如下图。

效果如图:

这就是一个联合何为联合的意思,为什么只能打印完整的double数据类型,分析下它的字节数就知晓了。

它的字节就是如图看最下面:

这告知我们,联合体内数据它只取最大的字节数据类型。即double数据类型的八个字节。

那么,我们初步的了解为:联合体就是公用一个内存空间。

继续看:当小编就只打印一个int数据类型和double数据类型时,如下图:

效果如图:

这就告知我们,当联合体内部,字节数少的数据类型遇见字节数多的类型时,只会打印高字节的完整数据,低字节类型直接为0.

简单就是说:1.联合体内部的取值完整与否,全得看字节大小决定

2.如果单独打印一个int数据类型,不用看了,肯定能打印完整。

如图:效果图:

3.前提之一,没有对高字节的数据类型赋值。前提之二,没有对同等数据类型赋值,且此类型还是后进入堆栈之中。

 满足这两个条件,打印的效果,全凭后进的数据类型为完整。

  效果如图:

--------------------------------------------------------------------------------分界线--------------------------------------------------------------------------

第二种定义,a,b都代表union Union

printf()下看看效果:

第三种:

方法一样。

 效果如图:

下面说说枚举体:

枚举体更加简单,看清三张样式图就能搞定。记住一切都是语法套路的问题。摸清了,一切OK!

这枚举体有点区别,它类似是宏定义一样。

我们看看它是如何打印:打印效果如图:

初步的了解为,枚举体它默认的第一个元素为0,然后依次递增1。

当然,如何赋值呢?看下面示意图:

小编随意给第一个赋值为1,打印效果图:

你也可以给任意一个赋值,打印看看。当然我写的上下左右只是个例子,你也可以写星期一到星期天,任意写多少个随你高兴就好。

最后一点只需要记住,枚举体的字节数它只是4个字节即可。

基本语法就是这样,如有不妥,请见谅!

 

转载于:https://www.cnblogs.com/VisiousDragon/p/8016816.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值