Originariamente inviato da andry85
Adesso ho capito l'errore che facevo. In pratica ogni elemento della matrice puntava alla variabile stringa, a questa variabile assegnavo un valore diverso ogni volta che leggevo una stringa nuova, ma l'indirizzo era lo stesso. Io invece devo allocare uno spazio per ogni stringa che leggo.
Infatti, mi sembrava di averti scritto ...

Nota bene: sia stringa che gli elementi matrice[i][j] devono puntare ad uno spazio allocato, staticamente per stringa, dinamicamente per matrice[i][j] ... (come ti aveva ricordato andbin) ...
... ma e' evidente che non hai letto completamente la risposta (ne' quella mia ne' quella di andbin) ...


Detto questo come potrei usare la soluzione qui sotto??
Devi allocare lo spazio per le stringhe!

Quindi una malloc per ogni elemento

matrice[i][j]