Ir ao conteúdo

Posts recomendados

Postado

Olá, estou tentando rodar um arquivo FLEX no meu windows, porém estou tendo alguns problemas:

Código do arquivo Lexico.l:
 

%option noyywrap

%{
#include <stdio.h>
#include "sintatico.tab.h" 
%}


DIGIT	[0-9]
ID	[a-z][a-z0-9]*

%%
program	{return(S_PROGRAM);}
if		{return (S_IF); }
then		{return (S_THEN); }
else		{return (S_ELSE); }
while	{return(S_WHILE);}
do		{return(S_DO);}
var		{return(S_VAR);}
begin	{return(S_BEGIN);}
end		{return(S_END);}
"/"		{return(S_DIV);}
and		{return(S_AND);}
or		{return(S_OR);}
not		{return(S_NOT);}
write	{return(S_WRITE);}
read		{return(S_READ);}
"+"		{return(S_MAIS);}
"-"		{return(S_MENOS);}
"*"		{return(S_VEZES);}
":="		{return(S_ATRIBUI);}
":"		{return(S_DOISPTOS);}
"."		{return(S_PONTO);}
";"		{return(S_PONTOVG);}
","		{return(S_VIRGULA);}
"("		{return(S_ABREPAR);}
")"		{return(S_FECHAPAR);}
">"		{return(S_MAIOR);}
"<"		{return(S_MENOR);}
">="		{return(S_MAIGUAL);}
"<="		{return(S_MEIGUAL);}
"="		{return(S_IGUAL);}
"<>"		{return(S_DIFERENTE);}
{DIGIT}+ 	{
				strcpy(lexema,yytext);
				return(S_NUMERO);
			}
{ID}		{
				strcpy(lexema,yytext);
				return(S_IDENTIF);
			}
[ \t]		/* faz nada. ignora espacos e tabulacao */
[\n]		{ numero_da_linha++; }
<<EOF>>		{ return (0); }
.			{			
				printf("\nErro lexico. SIMBOLO DESCONHECIDO: [%s]. LINHA: %d.\n",yytext,numero_da_linha);
				exit(1); 
			}
%%

 

image.png

  • Curtir 1

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

Ebook grátis: Aprenda a ler resistores e capacitores!

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!