#include #include #include struct LRC { int lineNo; // 行号 char show_time[10]; // 歌词时间 char content[128]; // 歌词内容 } line1, line2; // 第一行歌词,第二行歌词 #define slrc struct LRC // 定义别名 int main() { // line1.content = "天青色等烟雨,而我在等你"; // 错误,不能这样赋值,因为 content 是数组,不能直接赋值 // 正确写法是使用 strcpy 函数 line1.lineNo = 1; // 使用 strcpy 函数,将内容复制到结构体变量中成员的数组空间中 strcpy(line1.show_time, "00:00:01"); strcpy(line1.content, "天青色等烟雨,而我在等你"); line2.lineNo = 2; // 使用 strcat 也能达成同样的效果 strcat(line2.show_time, "00:00:06"); strcat(line2.content, "炊烟袅袅升起,隔江千万里"); printf("%d %s %s\n", line1.lineNo, line1.show_time, line1.content); printf("%d %s %s\n", line2.lineNo, line2.show_time, line2.content); // 创建第三行 slrc line3 = {.lineNo = 3, .show_time = "00:00:11", .content = "在瓶底书汉隶仿前朝的飘逸"}; printf("%d %s %s\n", line3.lineNo, line3.show_time, line3.content); slrc line4 = line3; // 结构体变量之间可以直接赋值 line4.lineNo = 4; // line4.content = "加个字"; // 错误,不能这样赋值,因为 content 是数组,不能直接赋值 strcat(line4.content, "加个字"); printf("%d %s %s\n", line4.lineNo, line4.show_time, line4.content); return 0; }