Ragazzi, scusate la banalità della domanda, ma è il mio primo esercizio con la memoria dinamica
Il seguente codice riempie un vettore con numeri da 1 a 40, n volte (3 volte)
Non capisco il problema, arriva al printf (infatti stampa i numeri) e poi crasha... Avrò sbagliato il free?
codice:#include <stdio.h> #include <stdlib.h> int main() { int *mazzo; int i=0; int j=0; int n=3; int k=0; mazzo=malloc(sizeof(int)); while (j<n) { while (i<40) { mazzo=malloc(sizeof(int)); mazzo[k]=i+1; i=i+1; k=k+1; } i=0; j=j+1; } for (i=0; i<n*40; i++) printf("\n%d", mazzo[i]); free(mazzo); system("pause"); return 0; }

Rispondi quotando
