salve.. ho problemi con una fscanf che restituisce inspiegabilmente valore 0 solo quando legge dalla seconda riga del file in poi..
esempio di file:
145451 Bianchi Laura 05ASO 20
143454 Rossi Alberto 06ACF 29
151978 Verdi Giovanni 07AXL 18
143454 Rossi Alberto 05ASO 28
145451 Bianchi Laura 07AXM 23
145451 Bianchi Laura 07AXM 26
e questo è il mio codice:
while(fscanf(fp,"%ld%s%s%s%d",&matr,cognome,nome,c od,&voto) != EOF) {
....
printf("%ld%s%s%s%d\n",matr,cognome,nome,cod,voto) ;
....
}
legge la prima riga.. dopodichè restituisce sempre 0 alla fscanf e non capisco perchè.
per curiosità ho provato a fare questo:
fscanf(fp,"%ld%s%s%s%d",&matr,cognome,nome,cod,&vo to);
fscanf(fp,"%ld%s%s%s%d",&matr,cognome,nome,cod,&vo to);
fscanf(fp,"%ld%s%s%s%d",&matr,cognome,nome,cod,&vo to);
fscanf(fp,"%ld%s%s%s%d",&matr,cognome,nome,cod,&vo to);
fscanf(fp,"%ld%s%s%s%d",&matr,cognome,nome,cod,&vo to);
fscanf(fp,"%ld%s%s%s%d",&matr,cognome,nome,cod,&vo to);
in questo modo non mi dà nessun problema e legge tutte le righe.. è ovvio che però cosi non mi serve a niente nel programma..
non so piu dove sbattere la testa e magari è un problema da niente ma nn lo vedo..
fatemi sapere.. grazie!
ciao