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 명령의 사용시 실제로 위의 프로그램과 같다)
반응형