• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录

SOC/IP验证工程师

  • 博客园
  • 联系
  • 订阅
  • 管理

公告

View Post

C语言中枚举类型的用法

如果一个变量只有几种可能的值,则可以定义为枚举(enumeration)类型,所谓枚举就是指把可能的值一一列举出来,变量的值只限于列举出来的值的范围内。
声明枚举类型用enum开头,例如,
enum Weekday {sun, mon, tue, wed, fri, sat};
然后用此类型来定义变量。
enum Weekday workday, weekend;
也可以不声明有名字的枚举类型,而直接定义枚举类型:
enum {sun, mon, tue, wed, thu, fri, sat} workday, weekend;

  1. c编译对枚举类型的枚举元素按常量处理,故称枚举常量。
    不要因为它们是标识符而把它们看成变量,不能对它们赋值。
    sun = 0; mon = 1;//错误,不能对枚举元素赋值
    2.每一个枚举元素都代表一个整数,C语言编译按定义时的顺序默认它们的值为0,1,2,3,4...。在上面的定义中,sun的值为0,mon的值为1。
    如果有赋值workday=mon;相当于workday=1;
    枚举常量是可以引用和输出的。
    printf("%0d", workday);//将输出整数1
    也可以认为地指定枚举元素的数值,在定义枚举类型时显式地指定,例如
    enum Weekday{sun=7, mon=1, the, wed, thu, fri, sat} workday, week_end;
    指定枚举常量sun的值为7,mon为1,以后数据加1,sat为6。
    由于枚举型变量的值是整数,因此C99把枚举类型也作为整数数据中的一种,即用户自行定义的整数类型。
    3.枚举元素可以用来作判断比较。
if(workday==mon) ...
if(workday>sun)...

posted on 2022-11-20 19:59  SOC验证工程师  阅读(508)  评论(0)    收藏  举报

刷新页面返回顶部
 
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3