要在 C 语言中实现动态链表,需要先定义一个结构体来表示链表的每个节点,这个结构体应该包含两个成员:一个是数据域,用来存储节点的数据;另一个是指针域,用来指向下一个节点。
示例代码如下:
#include <stdio.h>
#include <stdlib.h>
typedef struct node {
int data; // 数据域
struct node* next; // 指针域,指向下一个节点
} Node;
int main() {
// 创建第一个节点
Node* head = (Node*)malloc(sizeof(Node));
head->data = 1;
head->next = NULL;
// 创建第二个节点
Node* second = (Node*)malloc(sizeof(Node));
second->data = 2;
second->next = NULL;
// 将第二个节点插入到第一个节点之后
head->next = second;
return 0;
}
在上面的代码中,我们先定义了一个结构体 Node
,然后用 malloc
函数动态分配内存,创建了两个节点,并将它们插入到链表中。
注意,动态链表在使用完之后,要记得用 free
函数释放内存。