codice:
void crea_lista(FILE *input, data **lista)
{
char *stringa[20],buff[20];
int j=0,i;
while(fscanf(input,"%s",buff)>0)
{
stringa[j]=(char*)malloc(20*sizeof(char));
strcpy(stringa[j],buff);
j++;
}
stringa[j]=(char*)malloc(20*sizeof(char));
strcpy(stringa[j],"null");
for(i=0;strcmp(stringa[i],"null")!=0;i++)
{
lista[i]=(data*)malloc(sizeof(data));
lista[i]->word=(char*)malloc(20*sizeof(data));
strcpy(lista[i]->word,stringa[j]);
lista[i]->dim=strlen(lista[i]->word);
lista[i]=lista[i+1]->successivo;
}
lista[i+1]->successivo=NULL;
}
non accetta l'allocazione di word, perchè?