Header Ads Widget

Write a lex program to count the lines , Tabs , spaces and other characters .

 In this program we have to count the the number of lines , spaces and characters  . This is a lex program so first we have to know how to run a lax program in ubuntu and what is the format of the program . The lex files are save in file_name.l and for running a lex file we use some command which are given below:-


Code:-

%{
#include<stdio.h>
#include<string.h>
int lc=0,tc=0,ch=0,sc=0;
%}
%%
\n lc++;
([ ]) sc++;
\t tc++;
. ch++;
%%
int main()
{
yylex();
printf("Number of lines are %d\n",lc);
printf("Number of spaces are %d\n",sc);
printf("Number of tabs are %d\n",tc);
printf("Number of characters are %d\n",ch);
return 0;
}

Output:-

 One more thing you have to know for terminate the program press Ctrl+d then it will print the output.

tripathirajnish@ubuntu:~$ lex check.l
tripathirajnish@ubuntu:~$ gcc lex.yy.c -ll
tripathirajnish@ubuntu:~$ ./a.out
this is easycodingzone
    you can learn progarmming
in   a easy way
Number of lines are 3
Number of spaces are 8
Number of tabs are 3
Number of characters are 52
tripathirajnish@ubuntu:~$


Recommended Post:

Hackerearth Problems:-

Hackerrank Problems:-

Data structure:-

Key points:-

 MCQs:-