91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

c語言結構體指針數組怎么初始化

小億
228
2023-10-27 03:33:44
欄目: 編程語言

在C語言中,結構體指針數組的初始化可以通過以下幾種方式進行:

  1. 逐個初始化:通過逐個為每個元素賦值。例如:
struct Person {
    char name[20];
    int age;
};

struct Person *people[3];

people[0] = malloc(sizeof(struct Person));
strcpy(people[0]->name, "Tom");
people[0]->age = 20;

people[1] = malloc(sizeof(struct Person));
strcpy(people[1]->name, "Jerry");
people[1]->age = 25;

people[2] = malloc(sizeof(struct Person));
strcpy(people[2]->name, "Alice");
people[2]->age = 30;
  1. 使用靜態初始化:通過靜態方式初始化每個元素。例如:
struct Person {
    char name[20];
    int age;
};

struct Person *people[3] = {
    &(struct Person){"Tom", 20},
    &(struct Person){"Jerry", 25},
    &(struct Person){"Alice", 30}
};
  1. 使用循環初始化:通過循環為每個元素賦值。例如:
struct Person {
    char name[20];
    int age;
};

struct Person *people[3];
char names[3][20] = {"Tom", "Jerry", "Alice"};
int ages[3] = {20, 25, 30};

for (int i = 0; i < 3; i++) {
    people[i] = malloc(sizeof(struct Person));
    strcpy(people[i]->name, names[i]);
    people[i]->age = ages[i];
}

需要注意的是,在使用完結構體指針數組后,需要手動釋放內存。

0
铜鼓县| 永安市| 龙江县| 新丰县| 咸宁市| 中山市| 福鼎市| 扬中市| 昭苏县| 崇阳县| 刚察县| 逊克县| 体育| 安吉县| 万山特区| 临安市| 涪陵区| 安西县| 黑河市| 靖江市| 肥西县| 林口县| 阿克| 托克托县| 浮山县| 板桥市| 梁河县| 通海县| 瑞金市| 邢台市| 花莲县| 舞阳县| 内丘县| 陇南市| 雅江县| 桐乡市| 鄯善县| 夏津县| 富宁县| 武川县| 抚宁县|