なぜ私の削除機能が機能していないのか分かりません。アイテムが削除された場合に返す必要があるブール値です。すべてのヘルプは、あなたがリスト - に電流を比較単一リンクリストからのノードの削除C
boolean delete(SLL *list, String str){
NODE *current, *previous,*temp;
temp=malloc(sizeof(Employee));
previous=NULL;
current = list -> head;
while(current->next!=NULL) {
if(strcmp(current->anEmployee->name, str) == 0){
if(current=list->head){
list->head=current->next;
}
if(previous->next == NULL){//item not found in list
return 0;
}
else { //current is to be deleted
temp->next=current->next;
previous->next=temp->next;
return 1;
}
}
}
それについては動作しませんか? –
if(current = list-> head){ は==ですか? – strkol
また、関数内にメモリリークがあり、temp変数が不要です。 – strkol