/* def*/
%{
#include <stdio.h>
int vowelCount = 0;
int consonantCount = 0;
%}
/*RULES*/
%%
[aeiouAEIOU] {vowelCount = vowelCount + 1;}
[A-Za-z][^aeiouAEIOU] {consonantCount = consonantCount + 1;}
%%
/*fct*/
int main(void)
{
yylex();
printf ("il y a %d voyelles",vowelCount);
printf ("il y a %d consonnes",consonantCount);
return 0;
}
这是我的第一个lex计划。我想要计算源中有多少元音和多少辅音...
我有两个问题:
printf
,直到执行Ctrl + C并停止执行。所以yylex不会在它之后放任何指令,除非我退出停止整个执行,否则执行我需要做些什么才能解决这些问题?
good
的比赛是:
g默认规则
o规则1(元音)
od规则2(辅音)
可能跟随good
的换行符也将与默认规则匹配。