그래서 여기에 문제가 있습니다. 나는 연결리스트의 첫 번째 노드를 삭제하기 위해 노력하고있어 불행하게도 내가 사용에 제한 해요 :링크 된 목록의 첫 번째 노드 삭제
int delete(node* head, int i)
하여 수행하는 것이 좋습니다 어떤 다른 스레드, 내가 노드를 반환하거나 사용할 수 없습니다 달리 ** 노드 매개 변수 이전 대신 첫 번째 노드의 출력을 0을 삭제 한 후 설정을 인쇄 :
//before
12, 1, 14,
//after
0, 1, 14,
함수가 임의의 노드를 제거하도록 설계되지만 I 헤더의 값을 I로 동일한 부분에 붙어있다. 사전에
int delete(node * head, int i) {
node * current;
current=head;
while (current){
if((current=head) && (head->value=i)){
head=current->next;
free(current);
current=NULL;
break;
}
...
}
return 0;
}
감사 : 여기에 첫 번째 노드를 다루는 기능 delete
에서 코드입니다.
노드를 반환 할 수 없거나 ** 노드를 사용하는 경우'head'의 값을 어떻게 변경 하시겠습니까? – Kunal
내 생각은 처음에. 불행히도 내 임무는 그 기능을 사용하도록 제한합니다. – User49230
그런 다음 헤드 포인터를 전역으로 설정하십시오. – Kunal