You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
MIGUEL Á. TOLEDO MARTÍNEZ<br />
veces de le llama base de datos. A un conjunto de programas que está diseñado para crear y<br />
manejar bases de datos se le llama DBMS (Sistema de administración de bases de datos)<br />
ARCHIVOS Y FLUJOS<br />
C++ ve a cada archivo simplemente como una secuencia de bytes (figura 7.4) Todo<br />
archivo termina ya sea con un marcador de fin de archivos o con un número de byte específico<br />
que está registrado en una estructura de datos administrativa mantenida por el sistema. Cuando<br />
se abre el archivo, se crea un objeto y se asocia un flujo con ese objeto. En otra lección hemos<br />
visto que existen cuatro objetos que se crean automáticamente para nosotros: cin, cout, cerr y<br />
clog. Los flujos asociados con ellos proporcionan canales de comunicación entre un programa y<br />
un archivo o dispositivo particular. Por ejemplo, el objeto cin (el objeto de flujo de entrada<br />
estándar) permite que un programa reciba datos desde el teclado; el objeto cout (el objeto de<br />
flujo de salida estándar) permite que un programa envíe datos a la pantalla, y los objetos cerr y<br />
clog (objetos de flujo de error estándar) permiten que un programa envíe mensajes de error a la<br />
pantalla.<br />
0 1 2 3 4 5 6 7 8 9 ... n - 1<br />
Figura 7.4. La vista de C++ de un archivo de n bytes.<br />
Marcador<br />
de fin de<br />
archivo<br />
Para realizar el procesamiento de archivos en C++ se deben incluir los archivos de<br />
encabezado y . incluye las definiciones para las clases de<br />
flujo ifstream (para entrada desde un archivo), ofstream (para salida hacia un archivo) y fstream<br />
(para entrada y salida de un archivo) Los archivos se abren mediante la creación de objetos de<br />
estas clases de flujo, las cuales se derivan de (es decir, heredan la funcionalidad de) las clases<br />
istream, ostream e iostream, respectivamente. Por lo tanto, todas las funciones miembro,<br />
operadores y manipuladores que se han descrito en la lección 5 (COMO ENVIAR MENSAJES<br />
A <strong>LA</strong> PANTAL<strong>LA</strong>) y la primera parte de esta lección, también pueden aplicarse a los flujos de<br />
archivo. En la figura 7.5 se resumen las relaciones de herencia de las clases de E/S tratadas hasta<br />
este momento.<br />
ios<br />
istream ostream<br />
ifstream iostream ofstream<br />
fstream<br />
Figura 7.5. Parte de la jerarquía de las clases de E/S de flujo.<br />
FUNDAMENTOS – <strong>LECCIÓN</strong> 7 7-28