[讨论]谁能解释建立单链表的代码???
											/*尾插入法建表函数*/
linklist *creatlinkt()
{
    linklist *s,*t,*head;
    datatype1 x;
    head=(linklist *) malloc(sizeof(len));/* 得到第一个结点的地址*/
    head->next=null;/*置空,避免乱指*/
    s=head;/*  s也指向第一个结点  */
    printf("输入链表x:\n");
    scanf(%d,&x);/*得到第一个元素*/
    while(x!=end)
    {    t=(linklist *) malloc(len); /* 得到第二个结点的地址*/
        t->data=x;/* 将x放到第二个结束的data域中,怎么不放到第一个结点的data域中呢?*/
        t->next=null;
        s->next=t;/* 将第二个结点的地址放到第一个结点的next中,对不?*/
        s=t;/*  s指向第二个结点,供一下次的s->next=t使用*/
        scanf(d,&x);
    }
    return(head);
}
我上面的理解,建立的链表的第一个结点岂不是没有元素?即head->data没有元素。
但它是正确是代码。我还有哪些没有理解~~~???
大家指点迷津吧~~~

 
											





 
	    




