본문 바로가기

ETC

[Lex] Lex의 사용 및 실행(컴파일) - Lex를 이용한 간단한 프로그램


Lex의 사용(Lex를 이용한 간단한 프로그램)

Lex는 아래와 같이 %%와 %%사이에는 lex가 기술되고 그 이후에는 C가 기술된다.

%%
.|\n    ECHO;
%%
 
main()
{
        yylex();
}

 


위의 소스를 simple.l이라고 하면(밑줄 표시는 사용자 입력)

[ post ] % lex simple.l
                           # lex를 C언어로, lex.yy.c파일 생성
[ post ] % cc lex.yy.c -o simple -ll
                           # lex라이브러 포함 컴파일
[ post ] % ./simple < simple.l
                           # simple.l을 표준입력으로 하는 프로그램 실행
%%
.|\n ECHO;
%%

main()
{
        yylex();
}

위와 같이 되어 UNIX의 cat과 유사한 프로그램이 완성된다.(인자가 없는 cat 명령의 사용시 실제로 위의 프로그램과 같다)

반응형