Ciao a tutti.
Una domanda che probabilmente risulterà più che banale a chi utilizza costantemente il C.
Il seguente pezzo di codice mi fa terminare il programma con un Segmentation Fault e non capisco perchè (è incriminata l'istruzione in grassetto). Sottolineo che sto sviluppando sotto Linux:
Qualcuno mi sa spiegare perchè se utilizzo, invece, questa istruzione tutto funziona correttamente?codice:... char **vett; /* dichiaro un vettore di stringhe */ ... if ((vett = (char **) malloc(12 * sizeof(char*))) == NULL) { exit(5); } for(i=0; i<12; i++) { if ((vett[i] = (char *) malloc(4 * sizeof(char))) == NULL) { exit(6); } vett[i] = "\0\0\0"; } strcpy(vett[0], "gen"); ...
Ciao e grazie.codice:vett[i] = "gen";![]()