Buenas, me preguntaba si me podrían ayudar con un problema que he tratado de solucionar y si podrían darme consejos para el siguiente código.
#include <iostream>
#include <fstream>
#include <cstdlib>
using namespace std;
[HIGHLIGHT="C++"]
Código C++:
Ver originalint main()
{
//Ced: Cédula, Nom: Nombre, Ape: Apellido, Dir: Dirección, Tel: Teléfono, Op: Opción,
string Nom,Ape,Tel,Dir,Op;
char Ced[9];
system("cls");//limpiamos pantalla cout << "Bienvenido a nuestro sistema de matricula\n\n";
do//hacer siempre que se cumpla el while
{
cout << "********* Menu de Inicio ********* \n\n0: Salir" <<endl;
cout << "1: Matricular\n\nElige una opcion: ";
cin >> Op;
if(Op == "0")
{
cout << "Fin del Sistema\n\n";
system("pause");//Pausa la pantalla return 0;//Sale del Programa
}
else if(Op == "1")
{
ofstream Est;//Declaración del fichero
Est.open("Estudiante.dat");//Abrimos el fichero Estudiante.dat
if(Est.good())//Se puede trabajar en el archivo
{
cout << "Nombre: ";
cin >> Nom;
cout << "\nApellido: ";
cin >> Ape;
cout << "\nCedula: ";
cin >> Ced;
cout << "\nTelefono: ";
cin >> Tel;
cout << "\nDireccion: ";
getline(cin, Dir);//No lee el comando y se lo "salta"
cout << "\nMatricula Exitosa!\n\n";
Est << "Estudiante X\n\n<< Nombre: " << Nom << "\nApellido: " << Ape <<endl;
Est << "Cédula: " << Ced << "\nTeléfono: " << Tel << "\nDirección: " << Dir <<endl;
Est.close();
}
else//El archivo está corrupto
{
cout << "El archivo no se pudo crear o abrir";
}
}
}
while(Op != "0");//Si la opción ingresada es diferente a 0, se repite el ciclo
}//Fin del main
A la hora de ingresar la dirección no lee el comando getline() y pasa a la línea siguiente, lo cambie por el cin pero solo el cin >> no lee los espacios, intente tambien con cin.getline() pero no da resultado.
Algún consejo?