Lex Program TO find Syntax of Printf()
Lex Program TO find Syntax of Printf()
Source Code:-
2: #include<stdio.h>
3: #include<ctype.h>
4: int i=0,j=0;
5: %}
6: a "%d"|"%f"|"%c"|"%s"
7: id [a-zA-Z][a-zA-Z0-9]*
8: %%
9: printf\((\"({a}*|.*)*\"(,{id})*\))\; {for(i=0;i<yyleng;i++){if(yytext[i]=='%')
10: j++;
11: if(yytext[i]==',')
12: j--;
13: }
14: if(j==0)
15: printf("\ncorrect");
16: else
17: printf("incorrect");
18: }
19: %%
20: main()
21: { yyin=fopen("file12.c","r");
22: yylex();
23: }
24: int yywrap()
25: {return 1;
26: }
Source Code:-
1: %{
2: #include<stdio.h>
3: #include<ctype.h>
4: int i=0,j=0;
5: %}
6: a "%d"|"%f"|"%c"|"%s"
7: id [a-zA-Z][a-zA-Z0-9]*
8: %%
9: printf\((\"({a}*|.*)*\"(,{id})*\))\; {for(i=0;i<yyleng;i++){if(yytext[i]=='%')
10: j++;
11: if(yytext[i]==',')
12: j--;
13: }
14: if(j==0)
15: printf("\ncorrect");
16: else
17: printf("incorrect");
18: }
19: %%
20: main()
21: { yyin=fopen("file12.c","r");
22: yylex();
23: }
24: int yywrap()
25: {return 1;
26: }
Comments
Post a Comment