aboutsummaryrefslogtreecommitdiff
path: root/02/main.l
diff options
context:
space:
mode:
authorAkshay <[email protected]>2021-04-30 17:55:19 +0100
committerAkshay <[email protected]>2021-04-30 17:55:19 +0100
commitda1764a9f839e1d29b2bee12d35534f71f05c6ff (patch)
treed410c2191e571f9e6945ed88afd3faa1175675b3 /02/main.l
parent9ff0cec8b507d9164d8828dcb2a87012e140fdf5 (diff)
law & order
Diffstat (limited to '02/main.l')
-rw-r--r--02/main.l29
1 files changed, 29 insertions, 0 deletions
diff --git a/02/main.l b/02/main.l
new file mode 100644
index 0000000..872c7bc
--- /dev/null
+++ b/02/main.l
@@ -0,0 +1,29 @@
1%{
2int word_count = 0;
3int line_count = 0;
4int char_count = 0;
5int para_count = 0;
6int spaces = 0;
7%}
8
9%%
10\n line_count++;
11[ \t] spaces++;
12[A-Za-z]+ { word_count++; char_count+=yyleng;};
13\n\n para_count++;
14<<EOF>> {para_count++; return 1;};
15. ;
16%%
17
18int main(void) {
19 yylex();
20 printf("%d lines\n", line_count);
21 printf("%d words\n", word_count);
22 printf("%d blanks\n", spaces);
23 printf("%d characters\n", char_count);
24 printf("%d paragraphs\n", para_count);
25}
26
27int yywrap() {
28 return(1);
29}