typedef使用报错问题求助
按照老师在《带你学C带你飞》的第 50 课(基础typedef)课程最后的代码来写了一下,结果发现,不用typedef没有任何问题,用了typedef就会报错,具体代码如下:不用 typedef 代码:
#include <stdio.h>
#include <stdlib.h>
struct Date
{
int year;
int month;
int day;
};
int main(void)
{
struct Date *date;
date = (struct Date *)malloc(sizeof(struct Date));
if (date == NULL)
{
printf("内存分配失败~!\n");
exit(1);
}
date->year = 2022;
date->month = 5;
date->day = 1;
printf("%d-%d-%d\n", date->year, date->month, date->day);
return 0;
}
运行结果很顺畅,直接显示了:
下面是用了 typedef 代码的:
#include <stdio.h>
#include <stdlib.h>
typedef struct DATE
{
int year;
int month;
int day;
} Date;
int main(void)
{
struct Date *date;
date = (Date *)malloc(sizeof(Date));
if (date == NULL)
{
printf("内存分配失败~!\n");
exit(1);
}
date->year = 2022;
date->month = 5;
date->day = 1;
printf("%d-%d-%d\n", date->year, date->month, date->day);
return 0;
}
然后界面上就提示:
注:本机开发环境是 win10,编辑器是 vscode,C/C++编译器用的是 MINGW64
我就有点懵了。。这是完全按照老师的视频里的代码抄的,为啥本地会报错。。求各位大佬指教,谢谢。 第 13 行代码
struct Date *date;
改为
Date *date; jackz007 发表于 2022-2-12 18:40
第 13 行代码
改为
我这犯的错太低级了{:5_100:},感谢指导{:5_95:}
页:
[1]