// Programación en C++ para Ingenieros, Ed. Thomson Paraninfo, 2006 // Capítulo 10: Ficheros // Inclusión de librerías #include <iostream> #include <fstream> #include <string.h> using namespace std; // Declaración de tipos typedef char id[20]; typedef struct { id nombre, apellido; int edad; }persona; int main(void) { ifstream fEntrada; int pos; persona p; fEntrada.open("datosPersona.bin"); if (!fEntrada) cout << "Error abriendo el fichero" << endl; else { cout << "Entra el número de persona a mostrar: "; cin >> pos; if ((pos - 1) * sizeof(persona) > fEntrada.seekg(0, ios::end).tellg()) cout << "Ese elemento no existe" << endl; else { // Nos ponemos en la posición de la persona número pos fEntrada.seekg((pos - 1) * sizeof(persona)); fEntrada.read((char*)(&p), sizeof(p)); cout << p.nombre << endl; cout << p.apellido<< endl; cout << p.edad << endl; } } return 0; }