ads

6. Write a Program to recognize a valid variable name using YACC.

 

Lex  Program:

%{

#include "y.tab.h"

%}

 

%%

[a-zA-Z][a-zA-Z_0-9]* return letter;

[0-9]  return digit;

. return yytext[0];

\n return 0;

%%

 

int yywrap()

{

return 1;

}

YACC Program:

%{

#include<stdio.h>

int valid=1;

%}

 

%token digit letter

%%

start:letter s

s:letter s

|digit s

|

;

%%

int yyerror()

{

printf("\nits not valid identfier");

valid=0;

return 0;

}

int main(){

printf("\n enter a name to test for identifer \n");

yyparse();

if(valid)

{

printf("\n it is valid identfier");

}

}

    OUTPUT:

    

No comments:

Post a Comment