語法分析程序自動生成工具JavaCUP是一個LALR Parser Generator。JavaCUP是一個類似Unix平臺上yacc程序的開源軟件工具,遵循GPL。JavaCUP本身採用Java編寫,並且生成Java語言的分析程序源代碼。(下載地址:http://www2.cs.tum.edu/projects/cup/)
筆者下載的文件是:java-cup-bin-11b-20160615.tar.gz
解壓後爲:java-cup-11b-runtime.jar 和 java-cup-11b.jar 兩個文件
然後我就不會了,碼的
將java-cup-11b.jar文件放到工作區work。
1、先寫一個scanner.flex
2、再寫一個parser.cup
3、CD到work工作區,使用命令:java -jar java-cup-11b.jar parser.cup
4、窗口顯示:
------- CUP v0.11b 20160615 (GIT 4ac7450) Parser Generation Summary -------
0 errors and 0 warnings
12 terminals, 4 non-terminals, and 13 productions declared,
producing 24 unique parse states.
0 terminals declared but not used.
0 non-terminals declared but not used.
0 productions never reduced.
0 conflicts detected (0 expected).
Code written to "parser.java", and "sym.java".
---------------------------------------------------- (CUP v0.11b 20160615 (GIT 4ac7450))
5、寫一個主函數Calc.java
6、測試用例:test.txt
7、命令:java Calc test.txt