使用c语言编写一个函数,函数的功能是创建 一个带头结束的单向链表,返回链表的头结点并输出。
时间: 2024-10-28 10:07:59 浏览: 28
在C语言中,你可以使用结构体和指针来创建一个单向链表。下面是一个简单的例子,展示了如何编写一个函数`create_linked_list`,用于创建一个带头结点的单向链表,并返回链表的头节点。
首先,定义一个链表节点结构体`ListNode`:
```c
typedef struct ListNode {
int data; // 节点存储的数据
struct ListNode* next; // 指向下一个节点的指针
} ListNode;
```
接下来,编写创建链表的函数:
```c
ListNode* create_linked_list() {
// 初始化链表头节点
ListNode* head = (ListNode*)malloc(sizeof(ListNode));
if (head == NULL) {
printf("Memory allocation failed.\n");
return NULL;
}
// 设置头节点数据为0(或其他初始值)
head->data = 0;
head->next = NULL;
printf("Created linked list with head node:\n");
// 输出头节点信息
printf("Data: %d\n", head->data);
printf("Next pointer: %p\n", head->next);
return head;
}
```
这个函数首先分配一块内存给链表的头节点,然后设置头节点的数据和指向下一个节点的指针为NULL,表示这是一个空列表。最后,它会打印一些关于头节点的信息。
注意,这里假设`malloc`能成功分配内存。在实际应用中,需要添加适当的错误处理代码,例如检测`malloc`失败的情况。
阅读全文