Lex is a computer program that generates lexical analyzers. Lex reads an input stream specifying the lexical analyzer and outputs source code implementing the lexer in the C programming language.
The commands for executing the lex program are:
lex abc.l (abc is the file name)
gcc lex.yy.c -ll
./a.out
Let’s see lex program to check whether input number is odd or even.
Examples:
Input :
22
Output :
Input Number is Even
Input :
53
Output :
Input Number is odd
Below is the implementation:
/% Lex Program to check whether
- input number is odd or even. %/
% {
int i;
% }
%%
[0-9]+ {i = atoi (yytext);
if (i%2==0)
printf ( "Input Number is Even" );
else
printf ( "Input Number is Odd" );
};
%%
int main()
{
yylex();
return 1;
}
|
Output:
