C语言链表创建函数:plist creat(void)
这段代码是用来创建一个链表的函数,名为 'creat',返回值为 'plist'(即链表的头指针)。
该函数通过使用 'getchar' 函数逐个读取输入的字符,直到遇到换行符为止。每读取一个字符,就创建一个新的节点('list' 类型),将字符存储在节点的 'data' 成员中。
如果是第一个节点(即 'head' 为空),则将 'head' 指向该节点;否则,将上一个节点的 'next' 指针指向当前节点。
最后,将最后一个节点的 'next' 指针置为 'NULL',表示链表的结束。
函数最后返回链表的头指针 'head'。
// 链表节点定义
typedef struct list {
char data;
struct list *next;
} list;
// 链表创建函数
plist creat(void) {
plist head = NULL;
list *p1, *p2;
char a;
a = getchar();
while (a != '\n') {
p1 = (plist)malloc(sizeof(list));
p1->data = a;
if (head == NULL) {
head = p1;
} else {
p2->next = p1;
}
p2 = p1;
a = getchar();
}
p2->next = NULL;
return head;
}
原文地址: https://www.cveoy.top/t/topic/qb1B 著作权归作者所有。请勿转载和采集!