字体
第(2/6)页
关灯
   存书签 书架管理 返回目录
值,从 0 开始顺序定义为 0,1,2…。

    如在 weekday 中,sun 值为 0,mon 值为 1,…,sat 值为 6。

    【例 11.10】

    main(){

    enum weekday

    { sun,mon,tue,wed,thu,fri,sat } a,b,c;

    a=sun;

    b=mon;

    c=tue;

    printf("%d,%d,%d",a,b,c);

    }

    说明:

    只能把枚举值赋予枚举变量,不能把元素的数值直接赋予枚举变量。如:

    a=sum;

    b=mon;

    是正确的。而:

    a=0;

    b=1;

    是错误的。如一定要把数值赋予枚举变量,则必须用强制类型转换。

    如:

    a=(enum weekday)2;

    其意义是将顺序号为 2 的枚举元素赋予枚举变量 a,相当于:

    a=tue;

    还应该说明的是枚举元素不是字符常量也不是字符串常量,使用时不要加单、双引号。

    【例 11.11】

    main(){

    enum body

    { a,b,c,d } month[31],j;

    int i;

    j=a;

    for(i=1;i<=30;i++){

    month[i]=j;

    j++;

    if (j>d) j=a;

    }

    for(i=1;i<=30;i++){

    switch(month[i])

    {

    case a:printf(" %2d  %c\t",i,'a'); break;

    case b:printf(" %2d  %c\t",i,'b'); break;

    case c:printf(" %2d  %c\t",i,'c'); break;

    case d:printf(" %2d  %c\t",i,'d'); break;

    default:break;

    }

    }

    printf("\n");

    }

    11.11 类型定义符 typedef

    C语言不仅提供了丰富的数据类型,而且还允许由用户自己定义类型说明符,也就是说

    允许由用户为数据类型取“别名”。类型定义符 typedef 即可用来完成此功能。例如,有整型

    量 a,b,其说明如下:

    int a,b;

    其中 int 是整型变量的类型说明符。int 的完整写法为 integer,为了增加程序的可读xìng,可

    把整型说明符用 typedef 定义为:

    typedef int INTEGER

    这以后就可用 INTEGER 来代替 int 作整型变量的类型说明了。

    例如:

    INTEGER a,b;

    它等效于:

    int a,b;

    用 typedef 定义数组、指针、结构等类型将带来很大的方便,不仅使程序书写简单而且

上一页 目录 下一页