Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - mauroooooooo

#1
buenas, estoy tratando de crear una especie de compilador, este mismo lee un archivo linea por linea, en cada linea lee hasta que se encuentre un _ y lo guarda en una variable una vez que tengo la variable la comparo con otro y asi sucesivamente, hasta el momento ya pude hacer que lea hasta que se encuentre el _ y lo guarde en una variable para luego hacer la comparacion, pero no he podido limpiar la variable y hacer q salte de linea para seguir comparando, esto seria lo que llevo programado por el momento

void Compilar()
{
char palabra=1;
string ruta=" ",abc=" ",compara="MOSTRAR_"; //variable de prueba

system("cls");
MOSTRAR_ "Digite la ruta del archivo para compilar\n";
cin>>ruta;

ifstream f;
stringstream expresion;

f.open ("programar.txt", ifstream::in);

while (! f.eof() )
{

while (f.good() && (palabra != '_') )
{
palabra = f.get();
expresion << palabra;

}

while (expresion >> abc)
{
MOSTRAR_ abc<<"\n";
if(compara==abc)
{
MOSTRAR_ "Perfect Match" << endl; // este if es para ver si reconoce la variable copiada contra un string
system("pause");
}
}
expresion.clear();
}


f.close();


}

utilice esta funcion while (! f.eof() ) pensando en que con eso iba a leer linea por linea y la funcion expresion.clear(); al final del while para que limpie y vuelva a leer pero no me funciono, agradeceria mucho su ayuda ya que soy un poco nuevo en esto, gracias