Prova a dichiarare l'array in modo statico
e ti funziona.codice:char array_punts[5][5];
Nel tuo codice non stai inizializzando il numero di stringhe, e quindi fai un paciocco con la gestione di esse in memoria![]()
Consiglio: inizia ad istanziare la memoria per gestire queste stringhe in modo dinamico, per esempio, se nel tuo codice avessi fatto un lavoro del genere
avresti risolto perchè ora il numero di stringhe è inizializzato.codice:char *array_punts[5]; array_punts = (char **)malloc(sizeof(char) * 5);
Molto meglio invece se fai così
Cosi ottieni un array che può contenere 5 stringhe, ognuna di lunghezza 4 (5 - carattere terminatore '\0')codice:char **array_punts; int i; array_punts = (char **)malloc(sizeof(char) * 5); // Organizzi l'array per contenere 5 stringhe for (i = 0; i < 5; i++) array_punts[i] = (char *)malloc(sizeof(char) * 5); // Istanzi la lunghezza di ognuna delle 5 stringhe

Rispondi quotando