Salve ragazzi.
E' la prima volta che scrivo in questo forum quindi siate gentili e comprensivi

Vado subito al dunque: sono scritto ad Ingegneria Informatica e quest'anno abbiamo iniziato a lavorare in C++ ad un livello un pò più avanzato e quindi con allocazione dinamica, ADT e (a breve) classi, oggetti e compagnia bella.
Il problema è che al primo corso riguardante il C abbiamo trattato pochissimo i puntatori e di consegenza quest'anno mi ritrovo con 'ste variabili "strane" anche se non del tutto sconosciute.
Ora sto svolgendo un problema che mi chiede di creare un record Prodotto (staticamente) e di puntarlo con un puntatore e creare le varie funzioni per inserimento e cancellazione passando per riferimento questo puntatore al record. Fin qui è abbastanza semplice dato che, per non creare confusione, utilizzo il typedef e sostanzialmente mi levo quell'asterisco davanti...

Tutto questo però è per UN SOLO prodotto, queste funzioni vanno poi utilizzate per la creazione di un magazzino che va fatto con un vettore allocato dinamicamente contenente N puntatori che puntano al puntatore (descritto sopra) che a sua volta punti al record Prodotto.
Sostanzialmente è come creare una matrice allocata dinamicamente...

Allora ho creato due header, uno per le funzioni dedicate al singolo prodotto ed uno per le funzioni dedicate al magazzino.
In prodotto.h creo il record Prodotto e dopo metto "typedef Prodotto * prod", quindi alle funzioni passo valori di tipo "prod &"
In magazzino.h metto invece "typedef prod * mag" e alle funzioni passo valori di tipo "mag &".

Ora: il compilatore non dà errori, l'eseguibile viene creato...ma eseguo e quando entra nella funzione per inizializzare il magazzino (dove chiedo quanti prodotti verranno inseriti) tutto ok, appena iniziano le funzioni dedicate al prodotto mi si inceppa tutto (sostanzialmente il programma chiede di inserire il codice prodotto, lo inserisco, premo invio e si incasina)...

Ah ultima cosa, all'università la prof utilizza Dev-C++, io però, quasi sempre preferisco utilizzare Xcode che mi sembra un pò più comodo (crea gli header da solo, quando definisco un tipo con typedef, me lo colora in modo da distinguerlo ecc ecc). Non so se cambia qualcosa..