Ottimo suggerimento Dark867 funziona quasi.... mi spiego.... mi fa inserire il titolo e l'artista con gli spazi e mi da l'ok ma quando vado a visualizzare l'elenco dei brani inseriti alla voce "Titolo" non appare nulla mentre ad Artista si (nome e cognome con spazi).... sembra come se Titolo non me lo aggiorna....
Non capisco...![]()
Vi posto il codice con la funzione Visualizza() cosi lo testate...
codice:#include <iostream> #include <string> #include <cstdlib> using namespace std; struct brano { string titolo; string artista; string genere; brano* next; }; brano* testa; int attuali = 0; //Prototipi di funzioni void Titolo(); void Menu(); void Aggiungi (brano* &); void Visualizza(brano*); void Ordina(); void Trova(); void Elimina(); void SvuotaLista(); //funzione principale int main() { Titolo (); int risp; brano* testa = NULL; do { do { Menu (); cout <<"\n\nDigita la tua scelta: "; cin >> risp; } while (risp <1 || risp > 6); switch (risp) { case 1: Aggiungi(testa); break; case 2: Visualizza(testa); break; case 3: Ordina; break; case 4: Trova; break; case 5: Elimina; break; case 6: cout <<"\nArrivederci! :) \n\n"; break; } } while (risp != 6); return 0; } // funzioni in dettaglio void Titolo () { cout <<"\n\t LettoreMusicale.cpp di Silvia D'Ercole e Vito Montesano \n"; cout <<"\n\t Esame di: ALGORITMI E PROGRAMMAZIONE (prof. Vittorio Moriggia) \n"; cout <<"\n\t == GESTIONE DI FILE MUSICALI == \n"; } // fine Titolo void Menu() { cout <<"\n\t Contatti attualmente presenti: " << attuali << endl; cout <<"\n\n\t == Menu'== \n"; cout <<"\n\t [1]: Aggiungi un nuovo brano \n"; cout <<"\n\t [2]: Visualizza i brani inseriti \n"; cout <<"\n\t [3]: Ordina brani \n"; cout <<"\n\t [4]: Trova un brano \n"; cout <<"\n\t [5]: Elimina brano \n"; cout <<"\n\t [6]: Esci\n"; } // fine Menu void Aggiungi (brano* &testa) { string TitoloBrano; string ArtistaBrano; string GenereBrano; brano* nuovo; nuovo = new brano; cout <<"\n\n == NUOVO ELEMENTO == \n"; cout <<"\nTitolo brano: \t"; cin >> TitoloBrano; getline(cin, TitoloBrano, '\n'); cout <<"\nArtista: \t"; getline (cin, ArtistaBrano, '\n'); cout <<"\nGenere: \t"; cin >> GenereBrano; nuovo->titolo == TitoloBrano; nuovo->artista = ArtistaBrano; nuovo->genere = GenereBrano; nuovo->next = testa; testa = nuovo; attuali ++; cout <<"\n == Brano Inserito! == \n\n"; system ("pause"); system ("cls"); } // fine Aggiungi void Visualizza (brano* testa) { if (!testa) { cout <<" \n\n LISTA VUOTA!!! \n\n"; system ("pause"); system ("cls"); return;} brano* prossimo; prossimo = testa; cout <<"\n\n == ELENCO BRANI == \n\n"; do { cout <<"\n\n Titolo: " << prossimo->titolo << " \n"; cout <<"\n\n Artista: " << prossimo->artista << " \n"; cout <<"\n\n Genere: " << prossimo->genere << " \n"; cout <<"\n _________________________________" << " \n\n"; prossimo = prossimo->next; } while (prossimo != NULL); system ("pause"); system ("cls"); } // fine Visualizza

Rispondi quotando