📄 compiler.java
字号:
package source;import java.util.Queue;import java.util.Iterator;import java.util.Collection;//翻译类class Compiler { public static int line = 0; //语法制导翻译 public static void main(String[] args) { LexicalAnalysis words = new LexicalAnalysis(); GrammarAnalysis grmr = new GrammarAnalysis(); String exp = ""; Queue<Word> optr; int status = 1; while(((exp = Input.newLine()) != null) && (status == 1)) { //词法分析 optr = words.lexical_analysis(exp); //语法分析 status = grmr.grammar_analysis(optr); } Input.close(); if(status == -1) System.out.println("语法错误在第[ " + Input.line + " ]行!"); else if(status == 1) System.out.println("不全的条件语句!"); else { Word wrd = grmr.opStack.pop(); wrd = grmr.opStack.pop(); if(wrd.Code == 0) { wrd = grmr.opStack.pop(); if(wrd.Code == 27) System.out.println("正确,编译完毕!"); } else { System.out.println("检查到未知错误!"); } } }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -