2014-10-17 4 views
0

나는 머리라는 노드를 가진 프로그램을 가지고있다. 머리를 NULL로 설정하고 싶지만 무효화하고 싶습니다. 그래서 방법에 헤드 노드를 전달합니다 void를 사용하여 연결된 목록 노드를 수정하려면 어떻게합니까?

void removeNode(node* head) { 
head = NULL; 
} 

그러나 이것은 단지 빈 공간에서, 주요 기능에 머리를 변경하지 않습니다. 누구든지 무효로 매개 변수로 전달되는 노드의 값을 변경하는 방법을 알고 있습니까?

추신 : 필요에 따라 무료 함수 또는 메모리 할당 방법을 사용할 수 없습니다.

+1

'void removeNode (node ​​** head) {* head = NULL; }' – Coconop

답변

1

대신이 작업을 수행 할 것입니다 :

void removeNode(node** head) { 
    (*head) = NULL; 
} 

이 그 때문에 더 이상 포인트 아무것도, NULL에 실제 포인터를 변경합니다.

+0

어떻게 목록을 반복하고 마지막 노드를 NULL로 설정합니까? –

+0

@LeeWhite 및 추가 정보로, 귀하의 호출 기능에서 머리를 전달하는 대신 머리의 주소를 전달하십시오. – Kraken

관련 문제