函数与指针的问题,帮忙解决一下吧,谢谢了!
单链表的初始化和内存释放的问题:
typedef srruct 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;
}
请问,在初始化时,申请到的内存中都放了那些,是如何存放的?
为什么在初始化和释放时,参数都要设计成二级指针型?如果是指针型会怎样?
谢谢了!