C语言结构体

在C语言中,结构体(struct)是一种用户自定义的数据类型,允许将不同类型的数据组合成一个单一的单元。这对于表示具有多个相关属性的实体非常有用。

使用:

结构体定义:

使用 struct 关键字定义结构体。结构体定义通常放在头文件(.h)中,以便在多个源文件之间共享。

struct Student {
    char name[50];
    int age;
    float gpa;
};
  • struct Student:定义了一个名为 Student 的结构体。
  • char name[50]:结构体的一个成员,表示学生的姓名,是一个字符数组。
  • int age:结构体的另一个成员,表示学生的年龄,是一个整数。
  • float gpa:结构体的最后一个成员,表示学生的平均绩点,是一个浮点数。

结构体变量声明:

struct Student student1;
struct Student students[100]; // 声明一个包含100个Student结构体的数组
  • struct Student student1;:声明了一个名为 student1Student 结构体变量。
  • struct Student students[100];:声明了一个包含100个 Student 结构体的数组。

结构体成员访问:

student1.age = 20;
strcpy(student1.name, "Alice");
student1.gpa = 3.8;

printf("Name: %s, Age: %d, GPA: %.2f\n", student1.name, student1.age, student1.gpa);
  • student1.age = 20;:将 student1age 成员设置为20。
  • strcpy(student1.name, "Alice");:使用 strcpy 函数将 student1name 成员设置为 “Alice”。
  • student1.gpa = 3.8;:将 student1gpa 成员设置为3.8。
  • printf(...):打印 student1 的成员值。

结构体初始化:

struct Student student2 = {"Charlie", 22, 3.9};

printf("Name: %s, Age: %d, GPA: %.2f\n", student2.name, student2.age, student2.gpa);
  • struct Student student2 = {"Charlie", 22, 3.9};:声明并初始化 student2 结构体变量。

typedef和结构体结合使用:

typedef struct {
    char name[50];
    int age;
    float gpa;
} Student;

Student student3 = {"David", 23, 3.7};

printf("Name: %s, Age: %d, GPA: %.2f\n", student3.name, student3.age, student3.gpa);
  • typedef struct { ... } Student;:定义了一个名为 Student 的结构体别名。
  • Student student3 = {"David", 23, 3.7};:使用 Student 别名声明并初始化 student3 结构体变量。
THE END
喜欢就支持一下吧
点赞0 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片

    暂无评论内容