首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> C語言 >> 關於C語言

C 語言動態結構體陣列排序:malloc 配置、指標算術存取與年齡降冪排序

     編輯:關於C語言

C 語言動態結構體陣列排序:malloc 配置、指標算術存取與年齡降冪排序

動態配置結構體陣列


Teacher *create_teachers(int n) {
    Teacher *p = malloc(n * sizeof(Teacher));
    return p; // 失敗返回 NULL,呼叫端需檢查
}

指標算術存取成員


void print_teachers(const Teacher *arr, int n) {
    for (int i=0; i

年齡降冪排序 (冒泡)


void sort_teachers(Teacher *arr, int n) {
    for (int i=0; i

完整主程式


int main() {
    int n = 3;
    Teacher *teachers = create_teachers(n);
    if (!teachers) return 1;

    for (int i=0; i

關鍵點

  • malloc(n * sizeof(Teacher)) 一次配置連續記憶體,支援指標算術 arr+i。
  • 排序交換整個結構體 (淺拷貝),若含指標成員需改為交換指標或深拷貝。
  • 用畢 free(teachers) 歸還記憶體。
  • C++ 用 std::vector + std::sort 自動管理。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved