有大佬可以解答一下这个结构体吗?

typedef struct music {
int number;
char name[100];
char singer[100];
char album[100];
struct Song* next;
}song, * music;
同学写的一个结构体,他说是问大佬,大佬帮他弄的,但我不明白”}“后面是怎么回事,求大佬解答!!!!!!!!!!!

}后面是在声明变量,一种偷懒的写法。
https://blog.csdn.net/yanggangclcsdn/article/details/49718131

typedef定义数据类型的别名
song是结构体music的别名

  • music 与结构体名music冲突,是错误写法,改成 *pmusic,则pmusic是music指针类型

https://blog.csdn.net/a419116194/article/details/103834272?utm_medium=distribute.pc_relevant_t0.none-task-blog-BlogCommendFromMachineLearnPai2-1.nonecase&depth_1-utm_source=distribute.pc_relevant_t0.none-task-blog-BlogCommendFromMachineLearnPai2-1.nonecase