我有这个简单的代码:
#include <stdio.h>
#include <time.h>
int main(){
enum Days { asd=0,Lun,Mar,Mer,Gio,Ven,Sab,Dom };
Days TheDay;
time_t ltime;
struct tm *Tm;
ltime=time(NULL);
Tm=localtime(<ime);
int j = Tm->tm_wday;
TheDay = Days(j);
printf("[%d] %d/%d/%d, %d:%d:%d\n",
TheDay, /* Mon - Sun */
Tm->tm_mday,
Tm->tm_mon,
Tm->tm_year+1900,
Tm->tm_hour,
Tm->tm_min,
Tm->tm_sec);
}
我不明白为什么会收到此错误:
最佳答案
这不是C:
enum Days { asd=0,Lun,Mar,Mer,Gio,Ven,Sab,Dom };
Days TheDay;
新类型的名称是
enum Days
而不是Days
(这是枚举标记)。您必须使用:
enum Days { asd=0,Lun,Mar,Mer,Gio,Ven,Sab,Dom };
enum Days TheDay;
或使用typedef:
typedef enum Days Days;
才能将
Days
用作类型名称。关于c - 枚举: unknown type name,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/11436063/