Código:
Al momento de correr este código.. :( me marca un error "fallo de segmentación" y la verdad no sé que estoy haciendo mal :( alguien tiene idea de que pueda estar haciendo mal?? :) se agradece su ayuda :)!! int main () { fstream archivoRegistrosBinarios("Usuarios.dat", ios::in | ios::app | ios::out |ios::binary);//abrimos un archivo en modo añadidura, escritura y modo binario if (!archivoRegistrosBinarios)//si no existe { //ofstream archivoManipulacion("Usuarios.dat", ios::out | ios::binary);//crear el archivo if (!archivoRegistrosBinarios) //si no se pudo crear... salimos del programa { cerr << endl << "No se pudo crear o abrir el archivo..." << endl; exit(1); } } imprimeArchivoTexto(archivoManipulacion); } imprimeArchivoTexto(fstream &archivoaLeer) { ofstream archivoTexto("Usuarios.txt", ios::out); if (!archivoTexto){ cerr << endl << "No se pudo crear el archivo de texto." << endl; exit(1); } archivoTexto << endl << "Posición\tNombre\t\t\t\t\t\tGrupo\t\tAciertos\tErrores\tCalificación"<< endl; archivoaLeer.seekg(0); datosArchivar datosTexto; archivoaLeer.read( reinterpret_cast <char *>(&datosTexto),sizeof(datosArchivar)); while(!archivoaLeer.eof()) { archivoaLeer.read( reinterpret_cast <char *>(&datosTexto),sizeof(datosArchivar)); archivoTexto << datosTexto.posicion << "\t\t"; archivoTexto << datosTexto.nomb << "\t"; archivoTexto << datosTexto.grup << "\t"; archivoTexto << datosTexto.acier << "\t\t"; archivoTexto << datosTexto.error << "\t"; archivoTexto << datosTexto.calif << endl; archivoaLeer.read( reinterpret_cast <char *>(&datosTexto),sizeof(datosArchivar)); } }