亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? parsingmethod.java

?? 一個小的編譯器,可以模仿類似c語言的語法。很適合初級java學習者
?? JAVA
?? 第 1 頁 / 共 4 頁
字號:
			{
				flag = false;
			}
			
			else
			{
				error = true;
				flag = false;
			}
		}

		if(error)
		{
			errorMethod.error("single",0,"",WordAnalyze.lineOfWord[WordAnalyze.wordPointer]);
			while(WordAnalyze.wordPointer<WordAnalyze.wordStringLength
				&&!WordAnalyze.wordString[WordAnalyze.wordPointer].equals("}"))
				{
					advance();
				}
			clearStack();
			clearQueue();
		}
	}
	
	////////////////////express analyzing//////////////////
	public void expressAnalyze()
	{
		expressA();
	}
	
	public void expressA()
	{
		if(WordAnalyze.wordString[WordAnalyze.wordPointer].equals("("))
		{
			advance();
			expressA();
			if(WordAnalyze.wordString[WordAnalyze.wordPointer].equals(")"))
			{
				advance();
				if(judgeOperator(WordAnalyze.wordString[WordAnalyze.wordPointer]))
				{
					advance();
					expressA();
				}
			}
			else
			{
				errorMethod.error("sign",0,")",WordAnalyze.lineOfWord[WordAnalyze.wordPointer]);
			}
		}
		else
		if(judgeNum(WordAnalyze.wordString[WordAnalyze.wordPointer]))
		{
			advance();
			expressB();		
		}
		else
		if(judgeSymbol(WordAnalyze.wordString[WordAnalyze.wordPointer]))
		{
			if(!symbolIsExisting(WordAnalyze.wordString[WordAnalyze.wordPointer]))
			{
				errorMethod.error("symbol",1,WordAnalyze.wordString[WordAnalyze.wordPointer],WordAnalyze.lineOfWord[WordAnalyze.wordPointer]);
			}
			else
			{
				String s = getSymbolType(WordAnalyze.wordString[WordAnalyze.wordPointer]);
				String t = getTopStack();
				if(t.equals("double")||t.equals("float"))
				{
					if(s.equals("double")||s.equals("float")||s.equals("int"))
					{
						
					}
					else
					{
						errorMethod.error("express",1,WordAnalyze.wordString[WordAnalyze.wordPointer],WordAnalyze.lineOfWord[WordAnalyze.wordPointer]);
					}
				}
				else
				if(!t.equals(s))
				{
					errorMethod.error("express",1,WordAnalyze.wordString[WordAnalyze.wordPointer],WordAnalyze.lineOfWord[WordAnalyze.wordPointer]);
				}
			}
			advance();
			expressB();
			
		}
		else
		{
			errorMethod.error("express",0,"",WordAnalyze.lineOfWord[WordAnalyze.wordPointer]);
		}
	}
	
	public void expressB()
	{
		if(judgeOperator(WordAnalyze.wordString[WordAnalyze.wordPointer]))
		{
			advance();
			expressA();
		}
	}
	
	//////////////logic express analyze///////////

	public void logicExpressAnalyze()
	{
		if(WordAnalyze.wordString[WordAnalyze.wordPointer].equals(")"))
		{
			errorMethod.error("logicExpress",0,"",WordAnalyze.lineOfWord[WordAnalyze.wordPointer]);
		}
		logicFlag = true;
		feiFlag = true;
		logicExpressA();
		logicFlag = false;
		feiFlag= false;
		
	}
	public void logicExpressA()
	{
		logicExpressB();
		logicExpressD();
		
	}
	public void logicExpressD()
	{
		if(WordAnalyze.wordString[WordAnalyze.wordPointer].equals("||")
			||WordAnalyze.wordString[WordAnalyze.wordPointer].equals("&&"))
			{
				logicFlag = true;
				feiFlag = true;
				advance();
				logicExpressB();
			}
	}
	
	public void logicExpressB()
	{
		if(feiFlag&&WordAnalyze.wordString[WordAnalyze.wordPointer].equals("!"))
		{
			advance();
			if(WordAnalyze.wordString[WordAnalyze.wordPointer].equals("("))
			{
				advance();
				logicExpressB();
				if(WordAnalyze.wordString[WordAnalyze.wordPointer].equals(")"))
				{
					advance();
					if(WordAnalyze.wordString[WordAnalyze.wordPointer].equals("&&")
						||WordAnalyze.wordString[WordAnalyze.wordPointer].equals("||"))
						{
							logicExpressD();
						}
				}
				else
				{
					errorMethod.error("sign",0,")",WordAnalyze.lineOfWord[WordAnalyze.wordPointer]);
				}
			
			}
			else
			if(judgeSymbol(WordAnalyze.wordString[WordAnalyze.wordPointer]))
			{
				if(symbolIsExisting(WordAnalyze.wordString[WordAnalyze.wordPointer]))
				{
					if(getSymbolType(WordAnalyze.wordString[WordAnalyze.wordPointer]).equals("char"))
					{
						errorMethod.error("logicExpress",0,"",WordAnalyze.lineOfWord[WordAnalyze.wordPointer]);
					}
					
					else
					{
						
						advance();
						if(WordAnalyze.wordString[WordAnalyze.wordPointer].equals("&&")
							||WordAnalyze.wordString[WordAnalyze.wordPointer].equals("||"))
							{
								logicExpressD();
							}
						
					}
					
						
					
				}
				else
				{
					errorMethod.error("symbol",1,WordAnalyze.wordString[WordAnalyze.wordPointer],WordAnalyze.lineOfWord[WordAnalyze.wordPointer]);
				}
				
			}
			
			else
			if(judgeNum(WordAnalyze.wordString[WordAnalyze.wordPointer]))
			{
				advance();
				if(WordAnalyze.wordString[WordAnalyze.wordPointer].equals("&&")
						||WordAnalyze.wordString[WordAnalyze.wordPointer].equals("||"))
						{
							logicExpressD();
						}
				
			}
			else
			{
				errorMethod.error("logicExpress",0,"",WordAnalyze.lineOfWord[WordAnalyze.wordPointer]);
			}
		}
		else
		if(WordAnalyze.wordString[WordAnalyze.wordPointer].equals("("))
		{
			advance();
			logicExpressB();
			if(WordAnalyze.wordString[WordAnalyze.wordPointer].equals(")"))
			{
				advance();
				if(judgeOperator(WordAnalyze.wordString[WordAnalyze.wordPointer]))
				{
					logicExpressC();
				}
				else
				if(judgeLogicOperator(WordAnalyze.wordString[WordAnalyze.wordPointer])&&logicFlag==true)
				{
					logicExpressC();
					
				}	
				else
				if(WordAnalyze.wordString[WordAnalyze.wordPointer].equals("||")
					||WordAnalyze.wordString[WordAnalyze.wordPointer].equals("&&"))
					{
						logicExpressD();
					}
						
					
				
			}
			else
			{
				errorMethod.error("sign",0,")",WordAnalyze.lineOfWord[WordAnalyze.wordPointer]);
			}
		}
		else
		if(judgeSymbol(WordAnalyze.wordString[WordAnalyze.wordPointer]))
		{
			if(!symbolIsExisting(WordAnalyze.wordString[WordAnalyze.wordPointer]))
			{
				errorMethod.error("symbol",1,WordAnalyze.wordString[WordAnalyze.wordPointer],WordAnalyze.lineOfWord[WordAnalyze.wordPointer]);
			}
			else
			{
				if(getSymbolType(WordAnalyze.wordString[WordAnalyze.wordPointer]).equals("char"))
				{
					advance();
					if(judgeLogicOperator(WordAnalyze.wordString[WordAnalyze.wordPointer]))
					{
						advance();
						if(judgeSymbol(WordAnalyze.wordString[WordAnalyze.wordPointer]))
						{
							if(symbolIsExisting(WordAnalyze.wordString[WordAnalyze.wordPointer])&&getSymbolType(WordAnalyze.wordString[WordAnalyze.wordPointer]).equals("char"))
							{
								advance();
								if(WordAnalyze.wordString[WordAnalyze.wordPointer].equals("&&")
									||WordAnalyze.wordString[WordAnalyze.wordPointer].equals("||"))
									{
										logicExpressD();
									}
							}
							else
							{
								errorMethod.error("logicExpress",0,"",WordAnalyze.lineOfWord[WordAnalyze.wordPointer]);
							}
						}
						else
						{
							if(WordAnalyze.wordString[WordAnalyze.wordPointer].equals("'"))
							{
								advance();
								if(WordAnalyze.wordString[WordAnalyze.wordPointer].length()==1)
								{
									advance();
									if(WordAnalyze.wordString[WordAnalyze.wordPointer].equals("'"))
									{
										advance();
										if(WordAnalyze.wordString[WordAnalyze.wordPointer].equals("&&")
											||WordAnalyze.wordString[WordAnalyze.wordPointer].equals("||"))
											{
												logicExpressD();
											}
									}
									else
									{
										errorMethod.error("logicExpress",0,"",WordAnalyze.lineOfWord[WordAnalyze.wordPointer]);
									}
								}
								else
								{
									errorMethod.error("logicExpress",0,"",WordAnalyze.lineOfWord[WordAnalyze.wordPointer]);
								}
							}
						}
					}
					else
					{
						errorMethod.error("logicExpress",0,"",WordAnalyze.lineOfWord[WordAnalyze.wordPointer]);
					}
				}
				else
				{
					advance();
					logicExpressC();
				}
				
			}
			
		}
		else
		if(judgeNum(WordAnalyze.wordString[WordAnalyze.wordPointer]))
		{
			advance();
			logicExpressC();
		}
		else
		if(WordAnalyze.wordString[WordAnalyze.wordPointer].equals("!"))
		{
			advance();
			if(judgeSymbol(WordAnalyze.wordString[WordAnalyze.wordPointer]))
			{
				if(symbolIsExisting(WordAnalyze.wordString[WordAnalyze.wordPointer]))
				{
					advance();
					logicExpressD();
				}
				else
				{
					errorMethod.error("symbol",1,WordAnalyze.wordString[WordAnalyze.wordPointer],WordAnalyze.lineOfWord[WordAnalyze.wordPointer]);
				}
			}
			else
			if(WordAnalyze.wordString[WordAnalyze.wordPointer].equals("("))
			{
				logicExpressB();
				
			}
			else
			{
				errorMethod.error("logicExpress",0,"",WordAnalyze.lineOfWord[WordAnalyze.wordPointer]);
			}
		}
	}
	
	public void logicExpressC()
	{
		if(judgeOperator(WordAnalyze.wordString[WordAnalyze.wordPointer]))
		{
			feiFlag = false;
			advance();
			logicExpressB();
		}
		else
		if(judgeLogicOperator(WordAnalyze.wordString[WordAnalyze.wordPointer]))
		{
			feiFlag= false;
			if(logicFlag)
			{
				advance();
				logicFlag = false;
				logicExpressB();
			}
			else
			{
				errorMethod.error("logicExpress",0,"",WordAnalyze.lineOfWord[WordAnalyze.wordPointer]);
			}
			
		}
		else
		if(WordAnalyze.wordString[WordAnalyze.wordPointer].equals("||")
			||WordAnalyze.wordString[WordAnalyze.wordPointer].equals("&&"))
			{
				logicExpressD();
			}
	}
	
	
	////////////////the symbol is exist or not//////////////
	public boolean symbolIsExisting(String s)
	{
		boolean flag = false;
		int i;
		for(i=0;i<symbolTableLength&&!flag;i++)
		{
			if(symbolTable[i].getSymbolName().equals(s))
			{
				flag = true;
			}
		}
		return flag;
	}
	
	
	///////////////get over of the error sentence////////////
	public void getOverError()
	{
		while(WordAnalyze.wordPointer<WordAnalyze.wordStringLength-1
		&&!WordAnalyze.wordString[WordAnalyze.wordPointer].equals(";"))
		{
			advance();
				
		}
	}
	
	//////////////////succeed////////////////////
	public void success()
	{
		
		if(successFlag)
		{
			CompileFrame.errorArea.append("SUCCEED"+String.valueOf('\n'));

		}
		else
		{
			CompileFrame.errorArea.append("Number of error: "+String.valueOf(errorNum)+String.valueOf('\n'));
		}
	}
	////////show the symbol table//////////////////
	public void showSymbolTable()
	{
		for(int i=0;i<symbolTableLength;i++)
		{
			CompileFrame.errorArea.append("symbol name:"+symbolTable[i].getSymbolName()+"  type:"+symbolTable[i].getSymbolType()+String.valueOf('\n'));
		}
	}
	
	public void showIncludeFile()
	{
		for(int i=0;i<fileNum;i++)
		{
			CompileFrame.errorArea.append("file name:"+includeFile[i].getFileName()+"  type:"+includeFile[i].getFileType()+String.valueOf('\n'));
		}
	}
	
	public void showErrorLine()
	{
		for(int i=0;i<errorNum;i++)
		{
			CompileFrame.errorArea.append("error line in errorLines:"+String.valueOf(errorLines[i])+String.valueOf('\n'));
		}
	}
	
	///////////program analyze//////////////////
	public void programAnalyze()
	{
		/////////the defination part/////////
		defineAnalyze();
	
		/////////the program part///////////
		while(WordAnalyze.wordPointer<WordAnalyze.wordStringLength-1)
		{
		
			if(WordAnalyze.wordString[WordAnalyze.wordPointer].equals("if"))
			{
				ifAnalyze();
				clearStack();
				clearQueue();
			}
			else
			if(WordAnalyze.wordString[WordAnalyze.wordPointer].equals("while"))
			{
				whileAnalyze();
				clearStack();
				clearQueue();
			}
			else
			if(WordAnalyze.wordString[WordAnalyze.wordPointer].equals("for"))
			{ 
				forAnalyze();
				clearStack();
				clearQueue();
			}
			else
			if(WordAnalyze.wordString[WordAnalyze.wordPointer].equals("printf"))
			{
				printfAnalyze();
				clearStack();
				clearQueue();
			}
			else
			if(WordAnalyze.wordString[WordAnalyze.wordPointer].equals("scanf"))
			{
				scanfAnalyze();
				clearStack();
				clearQueue();
			}
			else
			if(judgeSymbol(WordAnalyze.wordString[WordAnalyze.wordPointer]))
			{
				evaluateAnalyze();
				clearStack();
				clearQueue();
			}
			else
			if(WordAnalyze.wordString[WordAnalyze.wordPointer].equals(";"))
			{
				nullAnalyze();
				clearStack();
				clearQueue();
			}
			else
			{
				errorMethod.error("internal",0,"",WordAnalyze.lineOfWord[WordAnalyze.wordPointer]);
				getOverError();
				clearStack();
				clearQueue();
				
			}
		}
		
	}	
	
	public void parsingAnalyzeMethod()
	{
		if(WordAnalyze.wordStringLength==0)
		{
			errorMethod.error("nothing",0,"",WordAnalyze.lineOfWord[WordAnalyze.wordPointer]);
		}
		else
		{
			includeOtherFile();
			
			if(WordAnalyze.wordPointer<WordAnalyze.wordStringLength)
			{
				mainProgram();
			}
			

		}
			//	showSymbolTable();
			//	showIncludeFile();
			//	showErrorLine();
				
	}
	
	
	
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
婷婷成人激情在线网| 日本午夜一区二区| 久久久久久久电影| 久久精品视频在线看| 久久综合九色综合欧美就去吻| 欧美不卡在线视频| 国产欧美日韩综合精品一区二区| 中文字幕一区二区三区精华液| 亚洲国产视频在线| 国产精品88av| 5858s免费视频成人| 国产精品久久久久久久久久久免费看 | 成人短视频下载| 欧美日韩精品二区第二页| 久久综合色天天久久综合图片| 亚洲免费观看高清完整版在线 | 国产欧美一区二区精品性色超碰| 亚洲精品视频观看| 国产大片一区二区| 欧美一区二区三区人| 亚洲精品成人在线| 成人做爰69片免费看网站| 欧美一区二区三区思思人| 国产精品亲子乱子伦xxxx裸| 免费美女久久99| 欧美性videosxxxxx| 中文字幕亚洲一区二区va在线| 国模娜娜一区二区三区| 欧美视频在线不卡| 亚洲男同性恋视频| 91丨porny丨国产入口| 久久久久国产精品人| 国产曰批免费观看久久久| 日韩午夜小视频| 免费日本视频一区| 欧美一级精品在线| 日韩黄色一级片| 91精品国产91久久综合桃花| 亚洲成人av在线电影| 欧美日韩一区二区三区在线看 | 精品日韩一区二区三区| 天堂va蜜桃一区二区三区漫画版| 欧美在线一区二区| 日韩中文字幕区一区有砖一区| 色丁香久综合在线久综合在线观看| 国产精品国产三级国产有无不卡| 国产99久久精品| 国产精品久久久久久久久久久免费看| 成人av午夜电影| 亚洲1区2区3区视频| 日韩精品一区国产麻豆| 国产一区二区看久久| 成人欧美一区二区三区黑人麻豆| 91亚洲资源网| 爽爽淫人综合网网站| 久久亚洲精品小早川怜子| av男人天堂一区| 性欧美大战久久久久久久久| 日韩欧美在线影院| 成人黄色777网| 性感美女极品91精品| 精品成人佐山爱一区二区| 北条麻妃国产九九精品视频| 视频一区二区三区在线| 中文字幕乱码一区二区免费| 一本到高清视频免费精品| 欧美午夜精品一区二区三区| 国产精品亚洲а∨天堂免在线| 亚洲日本成人在线观看| 26uuu精品一区二区三区四区在线| 99久久伊人精品| 国产一区二区三区免费观看| 一区二区在线观看视频| 久久综合久久综合九色| 7777女厕盗摄久久久| 91欧美激情一区二区三区成人| 精品一区二区三区视频在线观看 | 亚洲欧美日韩国产成人精品影院 | 日韩美女一区二区三区| 在线免费不卡视频| 成a人片国产精品| 国产精品一卡二卡| 黄色成人免费在线| 日本特黄久久久高潮| 亚洲精品国产视频| 中文字幕亚洲区| 国产精品视频免费看| 久久久久久亚洲综合影院红桃| 欧美一区二区国产| 欧美精品久久一区| 欧美精品777| 88在线观看91蜜桃国自产| 欧美体内she精高潮| 在线中文字幕一区二区| 色欧美乱欧美15图片| 中文字幕av一区二区三区| 国产亚洲一本大道中文在线| 国产欧美日韩在线看| 欧美国产一区在线| 亚洲美女视频在线观看| 亚洲欧美一区二区三区极速播放| 亚洲欧美一区二区视频| 亚洲美女少妇撒尿| 日韩影院精彩在线| 激情偷乱视频一区二区三区| 国产精品影视在线观看| a在线播放不卡| 欧美区在线观看| 久久久久久**毛片大全| 一区二区三区自拍| 日本不卡一二三区黄网| 国产福利不卡视频| 色哟哟国产精品免费观看| 欧美一区二区三区四区在线观看| 久久色视频免费观看| 日韩毛片高清在线播放| 日本不卡在线视频| av在线不卡网| 欧美大片日本大片免费观看| 国产精品久久99| 麻豆成人av在线| 色av综合在线| 欧美国产一区在线| 蜜臀久久99精品久久久久久9| 成人激情免费视频| 精品乱人伦一区二区三区| 亚洲色图在线视频| 国产福利91精品| 91麻豆精品国产91| 亚洲国产视频直播| 99久久精品国产一区| 欧美刺激脚交jootjob| 一区二区三区产品免费精品久久75| 激情欧美一区二区| 欧美视频自拍偷拍| 国产精品一区二区不卡| 欧美大片免费久久精品三p| 亚洲国产一区在线观看| caoporm超碰国产精品| 国产农村妇女毛片精品久久麻豆 | 亚洲国产精品久久久久秋霞影院| 国产老肥熟一区二区三区| 精品国精品国产| 美女精品一区二区| 欧美第一区第二区| 蜜臀精品一区二区三区在线观看| 欧美视频在线一区| 亚洲va欧美va人人爽午夜| 欧美日韩一区二区三区在线| 亚洲午夜成aⅴ人片| 欧美三级电影网站| 日韩中文字幕不卡| 日韩精品一区二区三区蜜臀| 极品少妇一区二区三区精品视频| 欧美成人性战久久| 国产精品资源在线看| 亚洲国产精品t66y| av不卡在线观看| 91在线视频18| 亚洲国产一区视频| 欧美大白屁股肥臀xxxxxx| 国产毛片精品一区| 亚洲精品视频观看| 欧美精品自拍偷拍| 国产福利精品一区二区| 亚洲欧美成aⅴ人在线观看| 欧美性猛片aaaaaaa做受| 蜜桃av噜噜一区| 国产亲近乱来精品视频| 91麻豆精东视频| 精品一区二区精品| 中文字幕一区二区三区在线不卡| 91成人免费电影| 粉嫩蜜臀av国产精品网站| 亚洲精品成人悠悠色影视| 91麻豆精品久久久久蜜臀| 成人国产亚洲欧美成人综合网| 亚洲国产乱码最新视频 | 色哦色哦哦色天天综合| 蜜桃视频在线一区| 亚洲欧美激情插| 国产精品午夜在线| 欧美电影免费提供在线观看| 丁香啪啪综合成人亚洲小说| 日韩精品亚洲一区二区三区免费| 中文字幕乱码亚洲精品一区| 日韩视频在线你懂得| 欧洲人成人精品| 波波电影院一区二区三区| 老司机午夜精品| 丝袜亚洲另类欧美| 一区二区三区自拍| 亚洲另类在线一区| 欧美激情一区二区三区四区| 久久色视频免费观看| 欧美videossexotv100| 欧美成人女星排名| 日韩精品一区二区三区视频| 91麻豆精品国产自产在线| 欧美日韩第一区日日骚|