18/01/15 12:04
perillitommaso
Ho un problemino:
in poche parole, ho provato a fare vari test e ho visto che con due playlist mi fa l'eliminazione in coda e in testa mentre con 3 playlist non succede praticamente nulla. Mi dice che me li cancella ma quando vado a visualizzare di nuovo le playlist presenti, vedo di nuovo le playlist di prima... qualcuno può aiutarmi?
struct el_lista * eliminaplaylist(el_lista *PT){ char nome[12]; PlayList *app; do{ system("cls"); if(PT==NULL){ printf("\nMP3 vuoto\n"); return PT; }else{ printf("\nPlayList presenti nell'MP3: "); curr = PT; while(curr!=NULL){ printf("\n- %s",curr->nomeplaylist); curr=curr->next; } } do{ printf("\nInserisci il nome della PlayList da eliminare: "); scanf("%s",nome); maiuscolo(nome); //controlliamo se la playlist da eliminare è il primo nodo if(strcmp(PT->nomeplaylist,nome)==0){ app=PT; PT=PT->next; free(app);//liberazione dalla memoria del nodo/ cancellazione nodo flag=1; }else{ //non è il primo nodo quindi controllare al centro della lista curr = PT; while(curr->next!=NULL && flag == 0){ if(strcmp(curr->next->nomeplaylist,nome)==0){ if(curr->next==NULL){ free(curr->next); flag=1; }else{ app=curr->next; curr->next=curr->next->next; free(app); flag=1; } }else{ curr=curr->next; } } } if(flag==0){ printf("\nErrore,non esiste la PlayList %s\n",nome); system("PAUSE"); } }while(flag==0); printf("\nEliminazione PlayList %s avvenuta con successo.",nome); printf("\nVuoi cancellare un' altra PlayList? <si/no>"); scanf("%s",scelta); //controllo sulla scela dell'utente while((strcmp(scelta,"si")!=0)&&(strcmp(scelta,"no")!=0)){ printf("\nErrore, inserisci solo si o no : "); scanf("%s",scelta); } }while(strcmp(scelta,"si")==0);//cicla di nuovo se la scelta è si return PT; }
in poche parole, ho provato a fare vari test e ho visto che con due playlist mi fa l'eliminazione in coda e in testa mentre con 3 playlist non succede praticamente nulla. Mi dice che me li cancella ma quando vado a visualizzare di nuovo le playlist presenti, vedo di nuovo le playlist di prima... qualcuno può aiutarmi?
aaa