Dubbio feof/fscanf

g.longhi
Salve a tutti,

ho da poco sostenuto lo scritto di informatica (programmazione in C) e la traccia richiedeva di leggere da un file di testo alcuni dati.

Per far ciò ho impostato un ciclo while e nella condizione ho inserito la feof per trovare la fine del file.
Nonostante sia perfettamente funzionante, la prof lo ha valutato come errore perchè, secondo lei, è meglio usare allo scopo la fscanf e verificare
se vi è o meno un EOF.
La motivazione è che se "in mezzo" al file si trova un EOF per qualche strano motivo, il metodo "feof" crea problemi.

Ma vorrei chiedervi, se si verifica una situazione del genere (abbastanza disgraziata aggiungerei :roll: ) lo stesso problema non si verifica anche
con il metodo della scanf?

Vi ringrazio

Risposte
hamming_burst
Ciao,
il codice come lo hai scritto?
i valori di ritorno di fscanf() li controlli, o li eviti in allegria?

cambia parecchio, la faccenda...

g.longhi
Ora non ho il codice sottomano, comunque il ciclo che ho fatto era del tipo

while (!feof(fp))
{
 ..
}


I valori di ritorno di fscanf mi pare di averli evitati in allegria.. :roll:

hamming_burst
allora è per quello che la tua docente ti ha detto che è sbagliato il codice.

feof(): http://digilander.libero.it/uzappi/C/li ... arerr.html
fscanf(): http://digilander.libero.it/uzappi/C/li ... scanf.html

vedi le differenze del valore di ritorno, cosa vedi?

Rispondi
Per rispondere a questa discussione devi prima effettuare il login.