Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
MIGUEL Á. TOLEDO MARTÍNEZ<br />
como desplazamiento a partir del inicio del archivo). Algunos ejemplos de la ubicación del<br />
apuntador de posición de archivo obtener son:<br />
//Ubica en el enésimo byte de objetoArchivo<br />
//asume ios::beg<br />
objetoArchivo.seekg(n);<br />
//Ubica n bytes hacia delante en objetoArchivo<br />
objetoArchivo.seekg(n, ios::cur);<br />
//Ubica y bytes hacia atrás con respecto al final de objetoArchivo<br />
objetoArchivo.seekg(y, ios::end);<br />
//Ubica al final de objetoArchivo<br />
objetoArchivo.seekg(0, ios::end);<br />
Es posible realizar las mismas operaciones con la función miembro seekp de ostream. Se<br />
proporcionan las funciones miembro tellg y tellp para devolver las localidades actuales de los<br />
apuntadores obtener y colocar, respectivamente. La siguiente instrucción asigna el valor del<br />
apuntador de posición de archivo obtener a la variable localidad de tipo long.<br />
Ejemplo 7.25<br />
localidad = objetoArchivo.tellg();<br />
El siguiente programa: CONSULTA.CPP, permite que un gerente de crédito despliegue la información de<br />
las cuentas para los clientes que tienen su saldo en cero (es decir, los clientes que no le deben dinero a la<br />
compañía), los saldos a favor (es decir, los clientes a los cuales la compañía les debe dinero) y los saldos<br />
en contra (es decir, los clientes que deben dinero a la compañía por bienes y servicios recibidos en el<br />
pasado) El programa despliega un menú y permite que el gerente de crédito dé alguna de tres opciones<br />
para obtener información de crédito. La opción 1 produce un listado de cuentas con saldo en cero. La<br />
opción 2 produce una lista de cuentas con saldos a favor. La opción 3 produce una lista de cuentas con<br />
saldos en contra. La opción 4 termina la ejecución del programa. Al dar una opción inválida simplemente<br />
se despliega la petición para que se dé otra selección.<br />
/* El siguiente programa: CONSULTA.CPP, ilustra el uso de consultas hechas a un archivo<br />
de crédito.<br />
*/<br />
#include //Para cout y ci<br />
#include //Para crear el objeto archivoCliente<br />
#include //Para setw()<br />
#include //Para exit()<br />
enum tipoRespuesta{balanceCero = 1, balanceCredito, balanceDebito, fin};<br />
int obtenerRespuesta();<br />
bool debeDesplegar(int, double);<br />
void lineaSalida(int, const char *, double);<br />
int main(void)<br />
{<br />
//El constructor de ifstream abre el archivo<br />
ifstream archivoCliente("clientes.dat", ios::in);<br />
FUNDAMENTOS – <strong>LECCIÓN</strong> 7 7-41