大家帮个忙,关于函数和指针的问题,多谢!
typedef struct Node //单链表节点结构体定义
{ DataType data;
struct Node *next;
}SLNode;
void ListInitiate(SLNode **head) //
{
if((*head=(SLNode *)malloc(sizeof(SLNode)))==NULL)exit(1);
(*head)->next=NULL;
}
void Destroy(SLNode **head) //单链表的销毁(内存释放)
{
SLNode *p, *p1;
p=*head;
while(p!=NULL)
{
p1=p;
p=p->next;
free(p1);
}
*head=NULL;
}
请问,在初始化时,申请到的内存中都放了那些,为什么要设计成 **head,如果设计成*head,会怎样?
在销毁表时,为什么也要设计成 **head?