#include <stdio.h>
#include <stdlib.h>
struct llnode {
int data;
struct llnode *next;
};
void insert (struct llnode **head, int data);
int
main () {
struct llnode *head;
head = NULL;
printf("startingn");
insert(&head, 4);
return 0;
}
void
insert (**struct llnode **head**, int data) {--> why do we use a pointer to a pointer
printf("insert %0dn", data);
struct llnode *l = malloc(sizeof(struct llnode));
l->data = data;
l->next = NULL;
if (*head == NULL) {
*head = l;
} else {
struct llnode *tmp = *head;
while (tmp->next != NULL) {
tmp = tmp->next;
}
tmp->next = l;
}
}
1)为什么使用指针对指针。可以用一个例子来解释吗?2)如何对双链表进行插入?请帮我解释一下如何打印
当你想传递给函数一个函数可以改变的指针时,通常使用指针指向指针。
指向指针或双指针的指针是变量,其值可能是其他指针变量的内存地址。
你回答得很好,我想他会比我解释得更好。
你也可以点击这个链接