简体   繁体   English

枚举C中的“未知类型名称”

[英]“Unknown type name” in Enum C

It says unknown type name 'week'.. Error showing on 3rd line. 它说未知类型名称'week'..错误显示在第三行。

Here is my Code: 这是我的代码:

#include <stdio.h>

enum week{ sunday, monday, tuesday, wednesday, thursday, friday, saturday };


void lecture_unit(week day)
{
    if (day == friday) printf("COS10008\n");
    if (day == monday) printf("Maths\n");
    if (day == sunday) printf("Holiday\n");
}

int main()
{
    week today;
    today = sunday;
    lecture_unit(today);
    printf("Day %d\n",today);
    return 0;
}

The correct type name should be enum week instead of just week 正确的类型名称应该是enum week而不是仅仅week

#include <stdio.h>

enum week{ sunday, monday, tuesday, wednesday, thursday, friday, saturday };


void lecture_unit(enum week day)
{
    if (day == friday) printf("COS10008\n");
    if (day == monday) printf("Maths\n");
    if (day == sunday) printf("Holiday\n");
}
int main()
{
    enum week today;
    today = sunday;
    lecture_unit(today);
    printf("Day %d\n",today);
    return 0;
}

If you prefer to use week instead you can use typedef to define type enum week as week 如果您更喜欢使用week则可以使用typedef将类型enum weekweek

#include <stdio.h>

enum week{ sunday, monday, tuesday, wednesday, thursday, friday, saturday };
typedef enum week week;

void lecture_unit(week day)
{
    if (day == friday) printf("COS10008\n");
    if (day == monday) printf("Maths\n");
    if (day == sunday) printf("Holiday\n");
}
int main()
{
    week today;
    today = sunday;
    lecture_unit(today);
    printf("Day %d\n",today);
    return 0;
}

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM