나는 flex와 함께 렉서를 생성했다.(f) lex에 대한 자신의 파서를 작성하는 방법?
[ \t\n\r\v] /* skip whitespace */
[_a-zA-Z]([_a-zA-Z]|[0-9])* printf("IDENT\n");
[0-9]+ printf("INTEGER\n");
[0-9]+\. printf("DOUBLE\n");
이제 C에서 자체 파서를 작성하려고하지만 렉서에서 토큰을 얻는 방법을 모르겠습니다. "lexer.c"에 yylex() 호출을 포함시켜야합니까? 그렇다면 printf()를 호출하는 대신 열거 형을 반환해야합니다. bison/yacc을 사용하지 않고이 작업을 수행하는 가장 좋은 방법은 무엇입니까?
GNU 버전의 도구에 대한 무료 GNU 문서가 실제로 없습니까? 온라인 버전이있는 O'Reilly의 책도 있습니다. (필자는이 질문을 대답이 아닌 주석으로 게시하고 있는데, 그 이유는 바로 참조가 없기 때문에 나는 그들을 보았던 것을 기억하는 것 같다.) –