10-02-2016, 10:50
hola a todos, hace mucho que curse algorimos y la estoy por dar ahora, y hay algo que no me esta cerrando.
Cuando se esta leyendo un archivo, lo que dice el apunte oficial es.
C
main()
{
FILE *f1, f2;
int c;
f1 = fopen(“entrada”, “r”);
f2 = fopen(“salida”,”w”);
c = fgetc(f1);
while (!feof(f1)) {
fputc(c, f2);
c = fgetc(f1);
}
fclose(f1);
fclose(f2);
return 0;
}
Solución algorítmica
AbrirArchTextoLectura(f1, “entrada”)
AbrirArchTextoEscritura(f2,”salida”)
LeerCaracter(f1,c)
Mientras(!feof(f1))
GrabarCaracter(f2,c)
LeerCaracter(f1,c)
FinMientras
Cerrar(f1)
Cerrar(f2)
Mi pregunta es que, al leer el caracter previo al while, si el archivo solo tiene 1 caracter, al leerlo el puntero no se posiciona en el eof y por ende no entra a la repetitiva ?
Gracias!
Cuando se esta leyendo un archivo, lo que dice el apunte oficial es.
C
main()
{
FILE *f1, f2;
int c;
f1 = fopen(“entrada”, “r”);
f2 = fopen(“salida”,”w”);
c = fgetc(f1);
while (!feof(f1)) {
fputc(c, f2);
c = fgetc(f1);
}
fclose(f1);
fclose(f2);
return 0;
}
Solución algorítmica
AbrirArchTextoLectura(f1, “entrada”)
AbrirArchTextoEscritura(f2,”salida”)
LeerCaracter(f1,c)
Mientras(!feof(f1))
GrabarCaracter(f2,c)
LeerCaracter(f1,c)
FinMientras
Cerrar(f1)
Cerrar(f2)
Mi pregunta es que, al leer el caracter previo al while, si el archivo solo tiene 1 caracter, al leerlo el puntero no se posiciona en el eof y por ende no entra a la repetitiva ?
Gracias!