关于#c语言#的问题:怎么才能把单链表后插发创建中的tail的地址和值传进另外的一个函数里使用#defineNULL0#include <stdio.h>

我想请问一下,怎么才能把单链表后插发创建中的tail的地址和值传进另外的一个函数里使用


#define NULL 0
#include
#include
typedef struct node
{
    int data;
    struct node* next;
    
}Linklist;
Linklist* create_LinklistR()//单链表的创建后插
{
    int x;
    Linklist* head, * p, * tail;
    head = (Linklist*)malloc(sizeof(Linklist));
    if (head == NULL)
    {
        return head;
    }
    head->next = NULL;
    tail = head;
    printf("请输入数据\n");
    scanf_s("%d", &x);
    while (x != 0)
    {
        p = (Linklist*)malloc(sizeof(Linklist));
        if (p == NULL)
        {
            return head;
        }
        p->data = x;
        tail->next = p;
        tail = p;
        tail->next = NULL;
        scanf_s("%d", &x);
    }
    
    return head;
}
int DeleteNode_Linklist(Linklist* head,Linklist*tail, Linklist* p)//删除本结点
{
    Linklist* r;
    if(p->next != NULL)
    {
        p->data = p->next->data;
        return(DeleteAfter_Linklist(p));
    }
else
{
    r = head;
    while(r->next != p)
        r = r->next;
    return(DeleteAfter_Linklist(r));
}
}
int main()
{
    Linklist* L;
    L = create_LinklistR();
    printf_Linklist(L);
    DeleteNO_Linklist(L, L, 3);
    printf("\n");
    printf_Linklist(L);
    
    }

![img](https://img-mid.csdnimg.cn/release/static/image/mid/ask/343937404976178.png "#left")

img

img

img

img

img

用指针的指针作为参数,传出去,或者用全局变量。

不知道你这个问题是否已经解决, 如果还没有解决的话:

如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^