Hola.
Tengo un fichero de acceso aleatorio que tengo que listar de arriba a abajo pero no encuentro la forma.
El lugar donde intento sacarlo es este:
while(!feof(alumnos)) // Leo mientras no sea fin de archivo (eof)
{
fseek(alumnos, i*sizeof(alumno), 0);
fread(&tmp, sizeof(alumno), 1, alumnos);
cout <<"======================================"<<endl;
cout <<"DNI>>"<<tmp.clave<<endl;
i++;
if(wherey()==24)
{
cout << "Pulse una tecla para continuar (T para terminar)" << endl;
terminar=getch();
if (terminar == 't')
{
break;
}
clrscr();
}
}
Pero todo el rato me saca 0, siempre.
Gracias.
No lo entiendo, pon el struct alumno y el fichero que le pasas de prueba, inicializas i a 0?
el struct está en la librería y si que está correcto, ya que insertar, modificar y borrar si que lo hace bien, es mas, sacar un solo registro también lo hace, el problema es que no quiero sacar uno, sino la lista de todos.
y si, i está inicializada a 0;
EDITO: Vale, ya he conseguido hacerlo, resulta que por el motivo que sea, se había corrompido el fichero (el de los datos), lo he vuelto a generar y ha funcionado bien.
Gracias.