2학년 입니다. ㅜㅜ 방학때 자료구조 공부 중인데요ㅕ./...

 

void sl_release()
{

while(head !=NULL)
{


head = head -> next;//head노드를 한칸 앞으로 움직이고
free(head); //그전 노드의 메모리를 해제한다.
}

이렇게 하면 안되는 이유가...

 

 

 

 

모범 답안이 밑에거 인데...


void sl_release()
{

node*temp;//임시로 노드 포인터 생성

//head가 널이 아니라면
while(head !=NULL)
{

temp = head; //임시노드에 head를 넣고
head = head -> next;//head노드를 한칸 앞으로 움직이고
free(temp); //그전 노드의 메모리를 해제한다.
}

 

 

차이점을 모르겠네요.//