0
我想定义char(即'a AND'a'),但我在检查错误时遇到问题。 在这里,我如何编写规则和检查:flex,定义char
char " ' " {letter}
代码
{char} {
int x =input() ;
//printf("%d",'a');
if(x == 10)
{
return(tCharunterm);
}
else if(x == '\'')
{
return(tChar);
}
else
{
yyerror("char overflow");
}
最后检查它:
'a
token = tCharunterm, value = "(null)"
'a'
token = tChar, value = "(null)"
'as
char overflow
'asddd
char overflow
token = tIdentifier, value = "ddd"
^Z