Como usar o programa lex com o programa yacc
Você também pode usar o programa lex com um gerador de parser, como o comando yacc . O comando yacc gera um programa, chamado de parser, que analisa a construção de mais de uma entrada de palavra.
Este programa parser opera bem com os analisadores lexicais que o comando lex gera. Os analisadores reconhecem muitos tipos de gramática sem relação com o contexto. Estes parsers precisam de um pré-processador para reconhecer tokens de entrada como o pré-processador que o comando lex produz.
O programa lex reconhece apenas expressões regulares estendidas e os formata em pacotes de caracteres chamados de tokens, conforme especificado pelo arquivo de entrada. Ao utilizar o programa lex para fazer um analisador lexical para um analisador lexical, o analisador lexical (criado a partir do comando lex ) partia o fluxo de entrada. O analisador (a partir do comando yacc ) designa estrutura para as peças resultantes. Você também pode usar outros programas junto com os programas gerados pelos comandos lex ou yacc .
Um token é a menor unidade independente de significado, conforme definido pelo analisador parser ou lexical. Um token pode conter dados, uma palavra-chave de idioma, um identificador ou outras partes de uma sintaxe de idioma.
return(token);%{
#include "y.tab.h"
%}#include "lex.yy.c"A biblioteca yacc deve ser carregada antes da biblioteca lex para obter um programa principal que fatura o analisador yacc . Você pode gerar programas lex e yacc em qualquer ordem.