【发布时间】:2016-01-30 19:59:57
【问题描述】:
我有一个School struct,它包含一个Student structs 的链接列表,每个Student structs 都拥有一个Courses structs 的链接列表。我对如何释放两个链表感到有些困惑。我特别不确定如何释放 Courses 链接列表,因为它位于另一个链接列表中。
struct Courses {
char *courseName;
int creditValue;
Courses *next;
} Courses;
struct Student {
char *studentName;
int studentAge;
Courses *coursesList; //First course (node)
Student *next;
} Student;
struct School {
char *schoolName;
int schoolAge;
Student *studentList; //First student (node)
} School;
如果有人可以向我展示一个如何释放两个链接列表的示例,那就太好了!
【问题讨论】:
-
我认为你应该花更多的时间来构建你的设计。为什么 Student 结构会保存指向下一个学生的指针? “下一个学生”是什么意思?课程也一样。修复此部分后,您可能需要额外的全球课程列表,您将在处置所有学生后处置。
标签: c struct linked-list free