中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

C語言怎么動態分配結構體數組

小億
89
2024-05-30 15:25:13
欄目: 編程語言

動態分配結構體數組的方法與動態分配普通數組類似,只需要在分配內存時考慮結構體的大小即可。以下是一個簡單的示例代碼:

#include <stdio.h>
#include <stdlib.h>

// 定義一個結構體
typedef struct {
    int id;
    char name[20];
} Student;

int main() {
    int n;
    printf("請輸入學生人數: ");
    scanf("%d", &n);

    // 動態分配結構體數組
    Student *students = (Student*)malloc(n * sizeof(Student));

    // 初始化結構體數組的值
    for (int i = 0; i < n; i++) {
        students[i].id = i + 1;
        sprintf(students[i].name, "Student%d", i + 1);
    }

    // 打印結構體數組的值
    for (int i = 0; i < n; i++) {
        printf("學生%d的ID是%d,姓名是%s\n", i + 1, students[i].id, students[i].name);
    }

    // 釋放動態分配的內存
    free(students);

    return 0;
}

在上面的示例代碼中,首先通過malloc()函數動態分配了一個包含nStudent結構體的數組。然后使用循環初始化了每個結構體的值,并最后打印出了每個結構體的值。最后使用free()函數釋放了動態分配的內存。

0
西林县| 买车| 汉沽区| 温州市| 武汉市| 永安市| 临江市| 石嘴山市| 富川| 沈阳市| 从化市| 桐柏县| 无锡市| 环江| 乐清市| 扶沟县| 乌苏市| 宣城市| 神木县| 临漳县| 余干县| 六安市| 渝中区| 河曲县| 静安区| 安义县| 松滋市| 新昌县| 新绛县| 河津市| 陕西省| 西林县| 池州市| 庄河市| 宜兰市| 腾冲县| 通许县| 常山县| 三亚市| 五寨县| 赤壁市|