Il professore ci ha dato delle funziononi tipo, di esempio che dobbiamo usare per gestire le liste. Il problema è che la funzionzione che dovrebbe leggere una stringa da tastiera si blocca e non capisco proprio perchè!
la funzione è questa:
legge un una sequenza di numeri e la mette in una lista pnodo.codice:pnodo leggi(){ int x; pnodo testa,ultimo; int n,i; cout << "Inserire il numero di elementi: "; cin >> n; if(n==0) return 0; for(i=0;i<n;i++){ cout << "Inserire il "<< i+1 <<" elemento: "; cin >> x; if(i==0){ testa=cons(x,0); ultimo=testa; }else{ pnodo nuovo=cons(x,0); ultimo->next=nuovo; ultimo=nuovo; } } return testa;
La lista pnodo è fatta cosi:
nella funzione leggi() viene chiamata un altra funzione per la creazione di una lista:codice:struct nodo{ int key; nodo* next;}; typedef nodo* pnodo;
(gli viene passato 0 come secondo parametro per crearla vuota di un solo elemento, senno l'ind precedente)
codice:pnodo cons(int x, pnodo testa){ pnodo nuovo=new nodo; nuovo->key=x; nuovo->next=testa; }

Rispondi quotando
hem.. non lo avevo visto!