Lex And Yacc

  1. Lex 单词个数统计例子

wordcounter.lex

%{
int wordCount = 0;
%}
chars [A-Za-z\_\'\.\"]
numbers ([0-9])+
delim [" "\n\t]
whitespace {delim}+
words {chars}+
%%
{words} { wordCount++; /* increase the word count by one*/ }
{whitespace} { /* do nothing*/ }
{numbers} { /* one may want to add some processing here*/ }
%%
void main()
{
        yylex(); 
        printf(" No of words:%d\n", wordCount);
}
int yywrap()
{
        return 1;
}

运行:lex wordcounter.lex

输出:lex.yy.c


运行:gcc -o wordcounter lex.yy.c

输出:wordcounter bin文件


运行:wordcounter < lex.yy.c 就可以统计到lex.yy.c文件里的单词个数了.


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值