📌  相关文章
📜  Lex程序在给定的输入文件中打印总字符,空格,制表符

📅  最后修改于: 2021-05-28 03:08:47             🧑  作者: Mango

Lex是一个生成词法分析器的计算机程序。 Lex读取指定词法分析器的输入流,并输出以C编程语言实现词法分析器的源代码。

用于执行lex程序的命令为:

lex abc.l (abc is the file name)
cc lex.yy.c -lfl
./a.out

让我们看看Lex程序在给定的输入文件中打印总字符,空格,制表符。

下面是实现:

/* Lex program to print the total characters, 
white spaces, tabs in the given input file.
*/
  
%
{
    int n, w, c;
    %
}
% %
\n { n++; }
[^ \n\t] +
{
    w++;
    c = c + yyleng;
}
.c++;
% % int yywrap(void)
{
    return 1;
}
  
  
main()
{
    extern FILE* yyin;
    yyin = fopen("input.txt", "r");
    yylex();
    printf("Line= %d word=%d total char=%d \n", n, w, c);
}

输入:

输出:

想要从精选的最佳视频中学习和练习问题,请查看《基础知识到高级C的C基础课程》。