Hola.
Un ejemplo (muy básico) que escribe y lee la estructura en un archivo:
Código PHP:
#include <iostream>
#include <string.h>
#include <fstream>
using namespace std;
const int SIZEMAXNAME = 20;
const int SIZEMAXSPELLS = 30;
const char* FILENAME = "struct.dat";
struct Datos {
int id;
char nombre[SIZEMAXNAME];
char apellidos[SIZEMAXSPELLS];
int edad;
};
void saveStruct( Datos dt );
void readStruct( Datos& dt );
int main()
{
// unos datos en dt
Datos dt = { 1, "Pedro", "Diloretto", 28 };
// guardar en archivo
saveStruct( dt );
// limpiar struct
memset(&dt, 0, sizeof( dt ) );
// leer de archivo
readStruct( dt );
// mostrar
cout << dt.id << " " << dt.nombre << " " << dt.apellidos << " " << dt.edad;
cin.get();
return 0;
}
void saveStruct (Datos dt )
{
ofstream f_out( FILENAME, ios::binary );
f_out.write( reinterpret_cast<char*>( &dt ), sizeof( dt ) );
f_out.close();
}
void readStruct (Datos& dt )
{
ifstream f_in( FILENAME, ios::binary );
f_in.read( reinterpret_cast<char*>( &dt ), sizeof( dt ) );
f_in.close();
}
Saludos