Tengo el siguiente problema.
Quiero modificar algunos campos de todos los registros de un archivo en el que tengo informacion de equipos de futbol.
La estructura es la siguiente
cpp
struct equipos { int codigoequipo; char nombre[30]; char dt[30]; char barrio[30]; int puntos; int partidosganados; int partidosempatados; int partidosperdidos; int estado; int borrado; };
Estos son puntos, partidos ganados, partidos perdidos y partidos empatados.
Ya que estoy haciendo un sistema que gestiona un torneo de futbol y despues de iniciar un nuevo torneo deberia reiniciar estos valores.
Crei que con solo recorrer el archivo y modificar como lo habia hecho anteriormente me saldria pero entra en un ciclo infinito, dejo el codigo que tengo...
cpp
fread(&equipo, sizeof(struct equipos), 1, archivoequipos); while (!feof(archivoequipos)) { fseek(archivoequipos, sizeof(struct equipos)*(-1L), 1); fread(&equipo, sizeof(struct equipos), 1, archivoequipos); equipo.puntos=0; equipo.partidosempatados=0; equipo.partidosganados=0; equipo.partidosperdidos=0; fseek(archivoequipos, sizeof(struct equipos)*(-1L), 1); fwrite(&equipo, sizeof(struct equipos), 1, archivoequipos); }
Despues de ejecutar esto, crei que todos los registros quedarian modificados pero como dije, se queda en un ciclo infinito, nunca llega a fin de archivo?
Saludos!