Sto cercando di scrivere un programma che legge una serie di stringhe da un file di testo e li memorizza in una serie di stringhe, allocando dinamicamente la memoria per ciascun elemento. Il mio piano era quello di memorizzare ogni stringa in un array usando un puntatore e quindi far crescere le dimensioni dell'array man mano che altri elementi venivano letti. Ho difficoltà a capire perché il mio codice di test qui sotto non funziona. È un'idea praticabile?Allocazione memoria dinamica per array di puntatori
char *aPtr;
aPtr =(char*)malloc(sizeof(char));
aPtr[0]="This is a test";
printf("%s",aPtr[0]);
Questo non funziona perché tu hai lo spazio 'malloc' per un singolo carattere, e poi provi ad assegnare un'intera stringa ad un lvalue' char'-tipizzato. –
Lettura consigliata: [Quando dovrei usare malloc in C e quando non lo faccio?] (Http://stackoverflow.com/a/1963812/2455888). – haccks