/
Inicio :: Foros

 F.A.Q.F.A.Q.                  Conéctese para revisar sus mensajesConéctese para revisar sus mensajes   

Turbo c: feof

 
      Índice del Foro elrincondelc.com -> General
Ver tema anterior :: Ver siguiente tema  
AutorMensaje
spirit1988



Registrado: 21 Oct 2005
Mensajes: 6

MensajePublicado: 04/11/2005 10:33 am
Título: Turbo c: feof

Hola quería sabér porqué el turbo c tiene problemas con el feof. Miren, este código me anda mal:

while (!feof(ArchivoLibros) && fgetc(ArchivoLibros)!='\0') {
fseek(ArchivoLibros,-1, SEEK_CUR);

fscanf(ArchivoLibros, "%d %s %s %s %s %d %d %d", &TotalLibros[NroLibros].id, TotalLibros[NroLibros].Nombre, TotalLibros[NroLibros].Autor, TotalLibros[NroLibros].Editorial, TotalLibros[NroLibros].Genero, &TotalLibros[NroLibros].FechaEdicion,&TotalLibros[NroLibros].VecesAlquilado, &TotalLibros[NroLibros].Alquilado);
for (j=0; j<TotalLibros[NroLibros].VecesAlquilado; j++)
fscanf (ArchivoLibros, "%d", &TotalLibros[NroLibros].HistorialMovimientos[j]);


if (idAnterior!=TotalLibros[NroLibros].id) {
idAnterior=TotalLibros[NroLibros].id;
NroLibros++;
} else
break;

}

Es como que no me toma el feof. ¿Puede ser que tenga que poner cada fscanf por separado, porque capaz en que una línea entera no la toma?
Volver arriba
Antares



Registrado: 30 Oct 2004
Mensajes: 46

MensajePublicado: 11/11/2005 9:03 am
Título:

Yo ya he tenido muchos problemas con el manejo de archivos en turbo c, asi que yo te recomiendo lo siguiente:

Reemplaza tu codigo
Código:
 while (!feof(ArchivoLibros) && fgetc(ArchivoLibros)!='\0')


por algo asi
Código:
 while(fgetc(ArchivoLibros)!=EOF)

y con esto creo que lograras el mismo efecto, ya que fgetc devuelve EOF si llega al fin de archivo.

Espero esto te funcione, suerte.

________________________________________________________________
Maldecir es el unio lenguaje que dominan todos los programadores
Volver arriba
      Índice del Foro elrincondelc.com -> General
Página 1 de 1Todas las horas están en GMT - 8 Horas

 
No puede crear mensajes
No puede responder temas
No puede editar sus mensajes
No puede borrar sus mensajes
No puede votar en encuestas

(c) ElRincondelC.com

Un proyecto de UrlanHeat.com