读书人

C语言数据结构链表尾插法有关问题!求

发布时间: 2012-06-06 16:44:11 作者: rapoo

C语言数据结构链表尾插法问题!求解释
老是没有结果,求大牛帮忙解释下原因,实在是没搞懂!到底问题出在哪里?

C/C++ code
typedef struct LNode{    ElemType date;    struct LNode *next;}*LinkList;//Initial LinkListvoid InitL(LinkList &L){    L = (LinkList)malloc(sizeof(LNode));//we just need a RAM directory to told us where the LinkList is.    L->next = NULL;}//Create LinkListvoid CreateL(LinkList &L){    int len;    //Firstly,we need to known the length of the LinkList.    printf("Please input L length:");    scanf("%d", &len);    for(int i = 0 ; i < len; i++){        LinkList p = (LinkList)malloc(sizeof(LNode));    //or LinkList p = new LNode(c++)        if(!p)            printf("Error\n");        printf("Please input LinkList number:");        scanf("%d", &p->date);                  //tail insert                  L->next = p;                  L = p;    }}


[解决办法]
引用参数以&开头,除可供输入值外,还将返回操作结果。你是按照书上课本打的吧。我想告诉你那是算法。不一定代码就是它。你要变成代码需要改动。如果你已经定义了L为指针。那你为什么还要加&。你画蛇添足啊?
我也不是很懂。
[解决办法]
探讨
...
2.我自己将InitL(LinkList &L)改成了InitL(LinkList L)之后,原来的代码就可以运行了...

读书人网 >C语言

热点推荐