c语言结构体数组初始化的四种方法
四种方法初始化C语言结构体数组
在C语言中,结构体(Structure)是一种用户自定义的数据类型,它可以将不同类型的数据组织在一起,形成一个整体。结构体数组是由多个结构体元素组成的数组,可以在一个数组中同时存储多个结构体对象。在本文中,我们将介绍四种方法来初始化C语言结构体数组。
方法一:逐个初始化
最简单的方法是逐个初始化结构体数组的每个元素。首先定义一个结构体类型,然后声明一个结构体数组,并逐个为数组的每个元素赋值。例如:
```c
#include <stdio.h>
struct Student {
    char name[20];
    int age;
    float score;
};
int main() {
    struct Student students[3];
    // 逐个初始化结构体数组的每个元素
    strcpy(students[0].name, "Tom");
    students[0].age = 18;
    students[0].score = 90.5;
    strcpy(students[1].name, "Jerry");
    students[1].age = 19;
    students[1].score = 88.5;
    strcpy(students[2].name, "Alice");
    students[2].age = 20;
    students[2].score = 92.0;
    // 输出结构体数组的元素
    for (int i = 0; i < 3; i++) {
        printf("Name: %s\n", students[i].name);
        printf("Age: %d\n", students[i].age);
        printf("Score: %.1f\n", students[i].score);
        printf("\n");
    }
    return 0;
}
```
方法二:使用初始化列表
C语言提供了初始化列表的方式来初始化结构体数组。通过在声明结构体数组时,使用花括号将每个元素的值括起来,并用逗号分隔。例如:
```c
#include <stdio.h>
struct Student {
    char name[20];
    int age;
    float score;
};
int main() {
    struct Student students[3] = {
        {"Tom", 18, 90.5},
        {"Jerry", 19, 88.5},
        {"Alice", 20, 92.0}
    };
    // 输出结构体数组的元素
    for (int i = 0; i < 3; i++) {
        printf("Name: %s\n", students[i].name);
        printf("Age: %d\n", students[i].age);
        printf("Score: %.1f\n", students[i].score);
        printf("\n");
    }
    return 0;
}
```
方法三:使用指针数组
另一种初始化结构体数组的方法是使用指针数组。首先定义一个结构体类型,然后声明一个指向结构体的指针数组,并为每个指针赋值为一个结构体对象的地址。例如:
```c
#include <stdio.h>
struct Student {
    char name[20];
    int age;
    float score;
};
int main() {
    struct Student student1 = {"Tom", 18, 90.5};定义数组初始化

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。