Código
#include <iostream> #include <fstream> #include <cstdlib> using namespace std; using std::exit; struct alumno { char nombre[256]; char apellido[256]; int edad; }; int main () { int i; alumno alum[50]; ofstream f; f.open("alumnos.bin", ios::out | ios::binary); if(f.open) { for (i=0; i<=50; i++) { cout<<"Teclee el nombre del alumno"<<endl; cin>>alum[i].nombre cout<<"Teclee el apellido"<<endl; cin>>alum[i].apellido; cout<<"Teclee la edad"<<endl; cin>>alum[i].edad; f.write(reinterpret_cast<const char*>(&alum[i]), sizeof(alumno); } } else { cout<<"Error al abrir el archivo"<<endl; exit(1); } is.close(); //leemos el archivo ifstream fe("alumnos.bin", ios::in | ios::binary); if (fe){ cerr<<"Se abrio correctamente"<<endl; } else { cout<<"No se abrio correctamente"<<endl; exit(1); } while (fe && !fe.eof()){ for (i=0; i<=50; i++){ cout<<"Teclee el nombre del alumno"<<endl; cin>>alum[i].nombre cout<<"Teclee el apellido"<<endl; cin>>alum[i].apellido; cout<<"Teclee la edad"<<endl; cin>>alum[i].edad; fe.read( reinterpret_cast<const char*>(&alum[i]), sizeof(alumno)); } }//fin del while return 0; }