29/07/10 9:55
giovybus
Salve ragazzi!... mi sapete dire perché mi da errore il compilatore con questo codice??.. cosa c'è di sbagliato??
list_t * init_list(list_t *list, FILE *fp){ list_t *head; fp = fopen("file.gn", "a+"); if(fp){ list = (list_t *)malloc(sizeof(list_t)); /*Alloco il primo elemento della lista*/ fscanf(fp, "%s\t", list ->name_matter);/*Inserisco i vari dati dal file*/ fscanf(fp, "%d\t", list ->valutation); fscanf(fp, "%d\t", list ->day); fscanf(fp, "%d\t", list ->mounth); fscanf(fp, "%d\t", list ->year); head = list; /*tengo il riferimento della testa della lista*/ while(feof(fp)){ list ->next = (list_t *)malloc(sizeof(list_t));/*alloco l'elemento successivo*/ list = list -> next;/*sposto il puntatore all'elemento successivo che ho allocato precedentemente*/ fscanf(fp, "%s\t", list ->name_matter);/*Inserisco i vari dati dal file*/ fscanf(fp, "%d\t", list ->valutation); fscanf(fp, "%d\t", list ->day); fscanf(fp, "%d\t", list ->mounth); fscanf(fp, "%d\t", list ->year); } list -> next = NULL; return head; }else{ return list = NULL; } }
aaa