用new和delete 利用动态分配存储单元构造一个课程(包含课程名,课程代码等信息)链表,然后 逐个打印出链表存储单元的内容,最后遍历并释放各节点。
时间: 2024-05-08 20:16:21 浏览: 4
```c++
#include <iostream>
#include <string>
using namespace std;
struct Course {
string name;
string code;
Course* next;
};
int main() {
Course* head = nullptr;
Course* current = nullptr;
Course* previous = nullptr;
// 构造链表
for (int i = 0; i < 3; i++) {
current = new Course;
current->name = "Course" + to_string(i+1);
current->code = "Code" + to_string(i+1);
current->next = nullptr;
if (head == nullptr) {
head = current;
}
else {
previous->next = current;
}
previous = current;
}
// 打印链表内容
current = head;
while (current != nullptr) {
cout << "Name: " << current->name << endl;
cout << "Code: " << current->code << endl;
current = current->next;
}
// 释放链表节点
current = head;
while (current != nullptr) {
previous = current;
current = current->next;
delete previous;
}
return 0;
}
```