Nippolo ha scritto:
La libreria stdafx.h è obbligatoria per l'uso di visual studio senza di essa il SW non funziona per nulla.
Usando Code::blocks non ne ero a conoscenza.
I motivi per cui il codice che hai postato non compila sono fondamentalmente due:
- nel prototipo chiami la funzione visualizzalibri, mentre nel main la chiami visualizziLibri;
- le funzioni inserimento e visualizzalibri si aspettano come primo argomento un puntatore doppio al tipo biblioteca, mentre nel main gli passi un puntatore singolo, infatti biblioteca *libri[] coincide con biblioteca **libri. Quindi come primo argomento delle funzioni devi scegliere tra biblioteca *libri e biblioteca libri[].
Aggiustate queste due cose il codice compila, ma ci sono cmq molti errori. Un paio di osservazioni:
- perché la funzione inserimento ritorna un intero?
- nella funzione inserimento fai confusione tra le variabili fine e num_libri. Inoltre passando fine per valore perderai ogni sua modifica all'uscita della funzione;
Ah di solito nei prototipi delle funzioni non si mettono i nomi degli argomenti, ma solo i tipi.
Ti ringrazio moltissimo per il tuo aiuto, vediamo se riesco a spiegarmi:
*intanto la funzione mii restituisce un intero perchè forse mi serve per continuare ad inserire in coda gli altri elementi, e se non conosco dove ho
finito non saprei come fare.
*il problema delle variabili tra num_libri e fine è scaturito solo dal fatto che ho cercato di adattare alla meglio il mio primocodice postato senza
funzioni a quest'ultimo con le funzione.
Avevo studiato un tempo che i parametri delle funzioni prevedevono sia il nome delle variabili che il tipo, tu sei sicuro che una funzione viene definita con i parametri solo con il tipo ? cioè come tu dici una funzione sarebbe :
int Funzione(int, double){...} // questo sarebbe ciò che tu mi dici ?
int Funzione(int a, double b) // questo sarebbe come ho sempre saputo, che a e b sarebbero successivamente una copia dei valori passati alla funzione, sbaglio ?
Scusami diciamo che ora parte degli errori grazie al tuo aiuto sono spariti ed il codice compila, ma come faccio a far ritornare il vettore che ho inserito nel main ?
Potresti gentilmenti farmi un esempio ?
Grazie mille