指针的指向问题

来源:互联网 发布:linux运维之道 第二版 编辑:程序博客网 时间:2024/06/04 18:14

最近开始复习数据结构,写了个测试程序时发现了一个问题。

typedef struct lnode
{
 int data;
 struct lnode *next;
}lnode,*linklist;

int main()

{

lnode L;
 Initlist(&L);

...

}

void Initlist(linklist pL)
{
 pL=(linklist)malloc(sizeof(lnode)); 
 pL->next=NULL

}

当我初始化带头结点的单链表时,实际上操作的是函数体内新开辟的内存,使之指针域为空,并不是主函数中开辟的内存,这样会导致你实际对 L  这个结构体并为进行任何操作。 

void Initlist(linklist pL)
{
 
 pL->next=NULL

}

这样即可。

原创粉丝点击