Buonasera a tutti.
Sono uno studente che attualmente sta studiando il C.
Sto facendo un programma che devo consegnare a lezione e sono bloccato su un problema.
Vi spiego a grandi linee il progetto. Ho un file .txt in cui ci sono alcuni carattere che devo scambiare con parole riposte in un altro file(file2). Nell' ultimo file, le parole sono messe sotto forma di elenco.
Ora vi espongo il mio problema. Per essere chiaro vi scrivo il pezzo di codice in cui sono bloccato:
while((fscanf(file2,"%d %s",&numero,parola)!=EOF)
{
if(numero==confrontonumero)
{
fprintf(output,"%s",parola);
}
}
}
P.s.: prima di questo ciclo while, ce n'è un altro che però ho omesso.
Ho notato che nell' output viene copiata soltanto la prima parola. Ho fatto qualche esperimento e ho scoperto che ogni qualvolta il puntatore nel file (quello che segna i caratteri) arriva all'EOF, poi non torna più su.
Datemi qualche consiglio con una spiegazione per capire l'errore.
Vi ringrazio anticipatamente del vostro aiuto.