怎么展示出链表的空间释放
时间: 2024-03-13 13:20:15 浏览: 20
可以通过打印每个节点的地址,以及使用free()函数释放节点所占用的空间来展示链表的空间释放过程。具体实现方法可以参考以下示例代码:
```c
#include <stdlib.h>
#include <stdio.h>
struct Node {
int data;
struct Node* next;
};
// 创建链表
struct Node* createLinkedList(int arr[], int n) {
struct Node* head = NULL;
struct Node* tail = NULL;
for (int i = 0; i < n; i++) {
struct Node* node = (struct Node*)malloc(sizeof(struct Node));
node->data = arr[i];
node->next = NULL;
if (head == NULL) {
head = node;
tail = node;
} else {
tail->next = node;
tail = node;
}
}
return head;
}
// 释放链表空间
void releaseLinkedList(struct Node* head) {
while (head != NULL) {
struct Node* tmp = head;
head = head->next;
printf("释放节点 %p, 数据为 %d\n", tmp, tmp->data);
free(tmp);
}
}
int main() {
int arr[] = { 1, 2, 3, 4, 5 };
struct Node* head = createLinkedList(arr, 5);
releaseLinkedList(head);
return 0;
}
```
在上面的代码中,我们创建了一个包含5个节点的链表,并通过releaseLinkedList()函数释放了链表的空间。在释放空间的过程中,我们打印了每个节点的地址以及它所存储的数据。输出结果如下:
```
释放节点 0x7fe90a4022c0, 数据为 1
释放节点 0x7fe90a4022d0, 数据为 2
释放节点 0x7fe90a4022e0, 数据为 3
释放节点 0x7fe90a4022f0, 数据为 4
释放节点 0x7fe90a402300, 数据为 5
```
可以看到,我们在释放每个节点的同时都打印了它的地址和数据,并且最终释放了整个链表的空间。
相关推荐
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)