From da1764a9f839e1d29b2bee12d35534f71f05c6ff Mon Sep 17 00:00:00 2001 From: Akshay Date: Fri, 30 Apr 2021 22:25:19 +0530 Subject: law & order --- 05/input | 5 +++++ 05/main.l | 24 ++++++++++++++++++++++++ 2 files changed, 29 insertions(+) create mode 100644 05/input create mode 100644 05/main.l (limited to '05') diff --git a/05/input b/05/input new file mode 100644 index 0000000..8be510e --- /dev/null +++ b/05/input @@ -0,0 +1,5 @@ +int main() { + int one, two, three; + three = two + one; + printf(three); +} diff --git a/05/main.l b/05/main.l new file mode 100644 index 0000000..ee13053 --- /dev/null +++ b/05/main.l @@ -0,0 +1,24 @@ +%{ + int k = 0; + int o = 0; + int i = 0; +%} + +%% +int|main|printf|scanf|char|if|else|for|switch|case k++; +[+*/%&=] o++; +[a-zA-Z_][a-zA-Z0-9_]* i++; +. ; +\n ; +%% + +int main(void) { + yylex(); + printf("%d keywords\n", k); + printf("%d operators\n", o); + printf("%d identifiers\n", i); +} + +int yywrap() { + return 1; +} -- cgit v1.2.3