domingo, 1 de marzo de 2009

La práctica del martes 3 de marzo es la primera en la que construiremos objetos repartidos en la clásica distribución de ficheros .h y .cpp para la cabecera, donde va la clase, y el cuerpo, donde irán los métodos de ese objeto.

Se verá cómo definir operadores para los objetos.

martes, 24 de febrero de 2009

Los ficheros.  Hoy en el laboratorio hemos hecho la segunda práctica acerca de ficheros.  Leer ficheros hasta que se encuentra el eof() parece fácil

ifstream f("nombrefich");
if (!f) return 1;
do {
f.getline(nombre, 256, ",");
if (f.eof()) break;
seguir leyendo
++i;
} while (siempre que haya sitio para lo leído)

No es tan sencillo saber si se ha acabado de leer el fichero.

Cuando se hace una lectura simple com en el caso de leer un entero f >> n; aunque el entero
esté al final del fichero y no haya otro byte detrás, eof() no salta. Para que salte hay que leer
otro número o cualquier otra cosa más, entonces es cuando salta.

Sin embargo, si se lee una línea con f.getline(…) eof() salta solo, ya que getline es más complejo
y trata de encontrar el fin de línea o de lo que sea y esa lectura interna sí que hace saltar
eof() aún habiendo leído ya algo en esa llamada.

Los ficheros binarios son fáciles, pero implican saber acerca de punteros y saber obtener
direcciones de variables… cosa que a muchos asusta. Por lo demás basta con leer/escribir/posicionar
o sea f.read(desde, cuánto); f.write(desde, cuánto); f.seekg(distancia, ios::beg);

Los ficheros quedan como una parte esencial de la programación en general a nivel de laboratorio
y se usan en todas las situaciones en que se quiera que los datos permanezcan, que son muchas
situaciones

lunes, 23 de febrero de 2009

Saludos

Un programa es como una obra literaria cuyo lector es algo inflexible, pero a través de la cual se puede llegar a producir lo más increíble y flexible del mundo, comunicar.

- Juan Falgueras