首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

8.4 共用枚举类型

一、共用 (1)定义 一般形式 union 共用名 {成员表列 }变量表列; 结构变量所占用的内存长度等于最长的成员的长度 (2)共用的特点 ①同一个内存段可以用来存放几种不同类型的成员,...但在每一瞬间只能存放其中一个成员而不是几个 ②可以对共用变量初始化,但初始化表中只能有一个常量 ③共用变量中起作用的成员是最后一次被赋值的成员 ④共用变量的地址和它的各成员的地址都是同一地址 ⑤不能对共用变量名赋值...,也不能企图引用变量名来得到一个值 ⑥以前的C规定不能把共用变量作为函数参数,但可以使用指向共用变量的指针作函数参数 ⑦共用类型可以出现在结构类型定义中,也可以定义共用数组 二、枚举 (1)定义...一般形式 enum[枚举名] {枚举元素列表}; 其中枚举名应遵循标识符的命名规则 注意: ①C编译对枚举类型的枚举元素按常量处理 ②每一个枚举元素都代表一个整数,C语言编译按定义时的顺序默认它们的值为

4323129
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    结构进阶与枚举联合

    结构进阶与枚举联合:: 结构进阶: 结构类型的声明 结构概述: 有时候我们需要将不同类型的数据组合成一个有机的整体,如:一个学生有学号、姓名、性别、年龄、地址等属性.显然单独定义以上变量比较繁琐...: 枚举类型的定义 枚举:将变量的值一一列举出来,变量的值只限于列举出来的值的范围内. enum 枚举名 { 枚举值列表 }; 枚举的性质: 在枚举值表中应列出所有可用值,也称为枚举元素....枚举值是常量,不能在程序中用赋值语句再对它赋值....枚举元素本身由系统定义了一个表示序号的数值从0开始顺序定义为0,1,2... enum Day { 枚举常量 Mon=1, Tues, Wed, Thur, Fri, Sat, Sun...枚举的使用 枚举一般配合switch使用 enum Color { red, blue, green, pink, yellow, black, white

    60810

    Java枚举

    枚举可以做什么 假设我们现在想表达星期,为了避免魔法值的出现,我们可能会写一个常量类: package com.tea.modules.java8.enums; /** * com.tea.modules.java8...枚举类基础用法 定义一个枚举类 Week package com.tea.modules.java8.enums; /** * com.tea.modules.java8.enums *...:MON 枚举位置:0 枚举类型:class com.tea.modules.java8.enums.WeekEnum 当前枚举名称:TUE 枚举位置:1 枚举类型:class com.tea.modules.java8...枚举类型:class com.tea.modules.java8.enums.WeekEnum 当前枚举名称:FRI 枚举位置:4 枚举类型:class com.tea.modules.java8.enums.WeekEnum...当前枚举名称:SAT 枚举位置:5 枚举类型:class com.tea.modules.java8.enums.WeekEnum 当前枚举名称:SUN 枚举位置:6 枚举类型:class com.tea.modules.java8

    2.4K74

    Java枚举

    什么是枚举枚举是一种特殊的数据类型,用于定义具有固定个数的常量集。它可以帮助我们更好地管理常量,使代码更易于阅读和维护。Java枚举是一种高效、可读性强的常量管理方式,它可以使代码更易于维护和扩展。...使用Java枚举可以帮助我们有效地组织常量,并将其用于多种场景,提高代码的易用性和可重用性。如何使用Java枚举?...在Java中,定义枚举使用enum关键字,其基本语法结构如下:其中,EnumName表示枚举类型的名称,CONSTANT1、CONSTANT2、……、CONSTANTN表示枚举类型中的常量值。...如何使用Java枚举中的常量值?...在Java枚举中,我们可以为每个常量值添加方法,以进一步组织和管理常量。

    17921

    Java 枚举

    Java 枚举 枚举 enum 什么是枚举类: Java 枚举是一个特殊的类,一般表示一组常量 比如: 一年的 4 个季节,一个年的 12 个月份,一个星期的 7 天,方向有东南西北等… 类似这种当一个变量有几种固定可能的取值时..., 可以将它定义为枚举类型 出现: Java1.5 之前是没有 枚举 和 注解 的....那时候一般用接口常量来替代 而使用 Java 枚举类型 enum 可以更贴近地表示这种常量. 还可以配合 Switch使用… 枚举类的实现: JDK1.5 之前需要自定义枚举类....JDK 1.5 中可以在 switch 表达式中使用Enum定义的枚举类的对象 作为表达式 case 子句可以直接使用枚举值的名字(无需添加枚举类作为限定) SeasonTest2.Java ​ Season.Java...在 Java 语言中和枚举类相关的,还有两个枚举集合类 java.util.EnumSet 和 java.util.EnumMap 使用 EnumSet 可以保证元素不重复,并且能获取指定范围内的元素

    9410

    C语言知识总结——宏,枚举,结构,共用

    枚举型是一个集合,集合中的元素(枚举成员)是一些命名的整型常量,元素之间用逗号,隔开。...虽然枚举类型可以当类型使用,但是实际上并不常用,但是如果是有意是排比名字,用枚举比宏定义方便,枚举比用好些,因为枚举有int类型,在C 语言中,枚举类型是被当做 int 或者 unsigned int...类型来处理的,既然枚举也是一种数据类型,所以它和基本数据类型一样也可以对变量进行声明,枚举也可以用typedef关键字将枚举类型定义成别名,并利用该别名进行变量声明 注意:1、同一个程序中不能定义同名的枚举类型...,不同的枚举类型中也不能存在同名的命名常量 2、枚举成员)是「常量」而不是变量,这个一定要搞清楚,因为枚举成员的是常量,所以不能对它们赋值,只能将它们的值赋给其他的变量 3、枚举类型的定义和变量的声明分开...; } return 0; } 枚举型是预处理指令#define的替代,枚举和宏其实非常类似,宏在「预处理阶段」将名字替换成对应的值,枚举在「编译阶段」将名字替换成对应的值,其中一个枚举常量的占的字节数为

    2.3K40

    Java 枚举

    枚举产生之前,都是采用多例设计模式实现。...枚举概念产生后,出现了新的 enum 关键字: 定义枚举: package cn.mldn.utli; enum Color { //定义枚举类 RED,GRE,BLUE; // 表示此处为实例化对象...,和先前的多例设计code相比较,枚举可以完全简化的替代多例设计模式 枚举关键字 enum定义的枚举类实际上就是继承了 Enum 类的子类:   Enum是一个抽象类;Enum类中定义了两个方法:     ...|-- 取得枚举的索引: public final int ordinal()     |-- 取得枚举的名字: public final String name()     |-- 枚举类之中还有一个...RED("红色"),BLU("绿色"),GREEN("黄色"); //枚举对象定义在枚举类中的首行 private String title ; // 枚举类中的属性 private

    1.2K10

    C# 结构(Struct)、 枚举(Enum)

    C# 结构(Struct) 在 C# 中,结构是值类型数据结构。它使得一个单一变量可以存储各种数据类型的相关数据。struct 关键字用于创建结构。 结构是用来代表一个记录。...您可能想跟踪每本书的以下属性: 定义结构 为了定义一个结构,您必须使用 struct 语句。struct 语句为程序定义了一个带有多个成员的新的数据类型。...(Enum) 枚举是一组命名整型常量。...枚举类型是使用 enum 关键字声明的。 C# 枚举是值类型。换句话说,枚举包含自己的值,且不能继承或传递继承。...enum { enumeration list }; 枚举列表中的每个符号代表一个整数值,一个比它前面的符号大的整数值。默认情况下,第一个枚举符号的值是 0。

    1K10

    自定义、枚举、结构类型

    {ON=1’b1,OFF=1’b z} out; 如果枚举类型并没有伴随着typedef,那么该枚举类型指的是匿名枚举类型;此时变量名应伴随其后; 将typedef与enum合并,可以将匿名枚举类型声明为自定义类型...03 结构类型 SV添加了和C一样的结构struct,而结构成员可以是任何变量类型,包括自定义类型或者其他常量类型; struct{ int a,b;//32位变量 opcode_t opcode... Instruction_Word.address=32’hF000001E; 结构类型默认也是变量类型,用户可以显式声明为var或者wire类型; 类似与枚举类型,结构类型也可以伴随着...typedef来实现自定义结构类型; typedef struct { //自定义结构 logic [31:0] a,b; logic [7:0] opcode; logic [23:...0] address; }instruction_word_t IW;// 结构变量声明 结构变量可以通过索引其各个成员做依次的成员赋值: always @(posedge clk or negedge

    1.4K10

    详解 Java 枚举

    前言 枚举(enum)是 Java 语言的关键字之一,和 class 关键字一样,我们可以通过 enum 来定义一个枚举类,并在这个枚举类里面创建相关的枚举常量。...这篇文章里我们来看一下枚举Java 字节码层面是怎么表示的。...枚举类 我们来深入看一下 Java 编译器是怎么处理枚举的:在控制台上键入 javap -c TestEnum.class(类路径需要换成你自己的编译得到的类路径),即反编译查看 TestEnum.class...java.lang.Enum { /* 定义了三个常量,即为我们在定义时书写的三个枚举常量 */ public static final enum_.TestEnum...好了,这篇文章就到这里了,相信到了这里你对 Java 枚举已经有了一个的详细的理解。如果觉得文章有什么不正确的地方,请多多指点,如果觉得本篇文章对你有帮助,请不要吝啬你的赞。 谢谢观看。。。

    1.3K20

    C语言结构、联合与枚举类型

    与结构(struct)、枚举(enum)一样,联合体也是一种构造类型。 联合的声明访问跟结构类似,访问跟结构也相似都是用点运算符来进行对联合体成员的访问。...三、枚举 顾名思义,枚举的意思就是列举,类如对一周七天的天气列举,对一个系统的不同模式进行列举就是枚举。...1.枚举类型的定义 枚举类型的定义非常简单,跟结构非常相似,使用关键字enum来对枚举进行声明,大括号内的内容为被逗号隔开的枚举的可能取值,这样就完成了枚举类型的声明。...Sun }; 那么枚举有什么用呢?...2.枚举的优点与使用 你有没有思考过这样一个问题:明明可以直接用#define来定义常量,但为什么还非要用枚举类型呢?

    11410
    领券