recién estamos comenzando a usar flex para construir un lexer para un proyecto, pero no podemos encontrar la manera de hacerlo funcionar. Copio el código de ejemplo dado en los tutoriales y trato de ejecutar Flex ++ con el archivo tut como su argumento, sin embargo, acabo de recibir un error cada vez. p.ej.Error de carácter incorrecto de Flex ++ y más. nuevo para flex
archivo de entrada (calc.l)
%name Scanner
%define IOSTREAM
DIGIT [0-9]
DIGIT1 [1-9]
%%
"+" { cout << "operator <" << yytext[0] << ">" << endl; }
"-" { cout << "operator <" << yytext[0] << ">" << endl; }
"=" { cout << "operator <" << yytext[0] << ">" << endl; }
{DIGIT1}{DIGIT}* { cout << " number <" << yytext << ">" << endl; }
. { cout << " UNKNOWN <" << yytext[0] << ">" << endl; }
%%
int main(int argc, char ** argv)
{
Scanner scanner;
scanner.yylex();
return 0;
}
con este código me sale
flex ++ calc.l
calc.l: 1: mal carácter:% calc. l: 1: sección de procesamiento de errores desconocidos 1
calc.l: 1: sección de procesamiento de errores desconocidos 1
calc.l: 1: proceso de error desconocido g sección 1
calc.l: 2: no reconocido '%' Directiva
Podría alguien ayudarme a entender lo que estoy haciendo mal aquí? aplausos
se hizo mediante la posibilidad de obtener esta información de http://www.mario-konrad.ch/index.php?page=20024? Estoy teniendo el mismo problema aunque lo he descargado por segunda vez, así que lo investigaré. – Ell
Me sale el mismo error aquí. – JohnTortugo
Sé que esta es una pregunta muy antigua ... pero encontré al menos una forma de compilar y ejecutar este tipo de archivo si alguna vez lo necesita en el futuro. – summea