Grazie ragazzi, in effetti non stavo considerando piu il fatto che devo allocare. Comunque sto facendo in un altro modo.
L'obiettivo è creare una lista di elementi che hanno ognuno un membro che è una stringa allocata dinamicamente e DEVE essere cosi perche essendo un esercizio d'esame non posso cambiarlo.
Ora vi chiedo se è corretto questo procedimento da ripetere n volte dove n è il numero degli elementi della lista.
codice:
printf("Immettere membro \"str\": ");
char s[100]; //array di supporto
scanf("%s", s);
char** stringhe = NULL; //array di puntatori a stringa
int n = 0;
stringhe = realloc(stringhe, sizeof(char*)*(n+1)); //alloco di un posto l'array di punt
stringhe[n] = malloc( sizeof(char)*(strlen(s)) ); //alloco la stringa dinamica della lunghezza che mi serve per memorizzare quello che ho preso in input
strcpy(stringhe[n], s); //copio l'input nella stringa allocata in precedenza
L->str = malloc(sizeof(char*)); //alloco L->str di quanto serve per contenere un puntatore a stringa
L->str = stringhe[n]; //faccio puntare L->str alla stringa dinamica
n++; //preparo n alla prossima iterazione
Se mi dite che questo procedimento è giusto allora l'errore sta nel come concateno la lista...
Aspetto voi! e come al solito vi ringrazio!!
Ps: Ho provato con dei printf sul codice che vi ho scritto sopra e mi sembra tutto apposto, ma una vostra occhiata e conferma non guasta!