为什么要用指针指向指针


#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)如何对双链表进行插入?请帮我解释一下如何打印

当你想传递给函数一个函数可以改变的指针时,通常使用指针指向指针。

指向指针或双指针的指针是变量,其值可能是其他指针变量的内存地址。

你回答得很好,我想他会比我解释得更好。

你也可以点击这个链接

相关内容

  • 没有找到相关文章

最新更新