c语言链表动态分配内存代码
时间: 2024-05-03 08:14:53 浏览: 109
当我们在C语言中使用链表时,通常需要动态分配内存来创建节点。以下是一个简单的示例代码,用于创建链表节点并动态分配内存:
```c
#include <stdio.h>
#include <stdlib.h>
// 定义链表节点结构
struct Node {
int data;
struct Node* next;
};
// 创建链表节点
struct Node* createNode(int data) {
struct Node* newNode = (struct Node*)malloc(sizeof(struct Node));
if (newNode == NULL) {
printf("内存分配失败!\n");
exit(1);
}
newNode->data = data;
newNode->next = NULL;
return newNode;
}
int main() {
// 创建链表节点
struct Node* head = createNode(1);
struct Node* second = createNode(2);
struct Node* third = createNode(3);
// 构建链表
head->next = second;
second->next = third;
// 遍历链表并打印节点数据
struct Node* current = head;
while (current != NULL) {
printf("%d ", current->data);
current = current->next;
}
// 释放内存
free(head);
free(second);
free(third);
return 0;
}
```
阅读全文