Question
Objectives: - Program in the C++ programming language Understand the lexical analysis phase of program compilation The first phase of compilation is called scanning
Objectives: - Program in the C++ programming language Understand the lexical analysis phase of program compilation The first phase of compilation is called scanning or lexical analysis. This phase interprets the input program as a sequence of characters and produces a sequence of tokens, which will be used by the parser. Write a C++ program that implements a simple scanner for a source file given as a command-line argument. The format of the tokens is described below. You may assume that the input is syntactically correct. Optionally, your program can build a symbol table (a hash table is a good choice), which contains an entry for each token that was found in the input. When all the input has been read, your program should produce a summary report that includes a list of all the tokens that appeared in the input, the number of times each token appears in the input and the class of each token. Your program should also list how many times tokens of each category appeared in the input. Sample token format: keyword -> if | then | else | begin | end identifier -> character | character identifier integer digit | digit integer real integer.integer special -> (1) [1 ] | + | | = | digit -> 0|1|2|3|4|5|6|7|1819 character -> a|b|c... |z|A|B|C |Z More details: - Case is not used to distinguish tokens. - The delimiters can be space, tab, newline, and special characters. You only need to use one delimiter in your implementation. Choice at least 5 token classes or use the sample ones above. Your program output can be ordered in any way you want. F
Step by Step Solution
There are 3 Steps involved in it
Step: 1
Below is a simple example of a C program that performs lexical analysis based on the token format you provided This program reads a source file provid...Get Instant Access with AI-Powered Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started