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

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

?? syntax.cpp

?? 語(yǔ)法分析
?? CPP
字號(hào):
/*
	語(yǔ)法分析外殼程序 0.2 (2003.10.23) [實(shí)現(xiàn)文件]
	作者:Dwing
*/
#include "syntax.h"		//For Shell
#include "zSyntax.h"	//For Core Class

HINSTANCE hinst;		//Recent Instance
HWND hwnd;				//For Dialog
zSyntax *s;				//語(yǔ)法分析類
char in[65536];			//輸入文法緩沖區(qū)
char out[65536];		//輸出結(jié)果緩沖區(qū)
char str[256],b[256];	//臨時(shí)字串緩沖區(qū)

int WINAPI WinMain(HINSTANCE hInstance,HINSTANCE hPrevInstance,LPSTR lpCmdLine,int nCmdShow)
{
	s=new zSyntax;
	hinst=hInstance;
	DialogBox(hinst,MAKEINTRESOURCE(IDD_MAINDLG),NULL,(DLGPROC)dlgproc);
	delete s;
	return 0;
}

void printout(char *b)	//串行化輸出
{
	strcat(out,b);
	SetDlgItemText(hwnd,IDC_OUTPUT,out);
}

BOOL CALLBACK dlgproc(HWND hdlg,UINT msg,WPARAM wparam,LPARAM lparam)
{
	int i,j;char *p;
	switch(msg)
	{
	case WM_INITDIALOG:
		hwnd=hdlg;
		in[65535]=0;	//結(jié)尾清0防止溢出
		out[65535]=0;	//結(jié)尾清0防止溢出
		SendMessage(hdlg,WM_SETICON,ICON_BIG,(LPARAM)LoadIcon(hinst,MAKEINTRESOURCE(IDI_ICON)));
		SendDlgItemMessage(hdlg,IDC_VN,WM_SETFONT,(DWORD)GetStockObject(ANSI_FIXED_FONT),0);
		SendDlgItemMessage(hdlg,IDC_VT,WM_SETFONT,(DWORD)GetStockObject(ANSI_FIXED_FONT),0);
		SendDlgItemMessage(hdlg,IDC_INPUT,WM_SETFONT,(DWORD)GetStockObject(ANSI_FIXED_FONT),0);
		SendDlgItemMessage(hdlg,IDC_OUTPUT,WM_SETFONT,(DWORD)GetStockObject(SYSTEM_FIXED_FONT),0);
		SendDlgItemMessage(hdlg,IDC_TEST,WM_SETFONT,(DWORD)GetStockObject(ANSI_FIXED_FONT),0);
//		SetDlgItemText(hdlg,IDC_VN,"ABCDS");//Another Example.
//		SetDlgItemText(hdlg,IDC_VT,"abc");
//		strcpy(in,"S->AB\r\nS->cC\r\nA->@\r\nA->b\r\nB->@\r\nB->aD\r\nC->AD\r\nC->@\r\nD->aS\r\nD->c");
		SetDlgItemText(hdlg,IDC_VN,"EeTtF");
		SetDlgItemText(hdlg,IDC_VT,"i+*()");
		strcpy(in,"E->Te\r\ne->+Te\r\ne->@\r\nT->Ft\r\nt->*Ft\r\nt->@\r\nF->i\r\nF->(E)\r\n");
		SetDlgItemText(hdlg,IDC_INPUT,in);
		SetDlgItemText(hdlg,IDC_BEGIN,"E");
		SetDlgItemText(hdlg,IDC_TEST,"i+i*i#");
		break;
	case WM_COMMAND:
		switch(LOWORD(wparam))
		{
		case ID_START:
			SetCursor(LoadCursor(NULL,IDC_WAIT));
			s->reset();
			*out=0;
			printout("檢查產(chǎn)生式......");
			GetDlgItemText(hdlg,IDC_VN,in,65535);
			s->setvn(in);
			GetDlgItemText(hdlg,IDC_VT,in,65535);
			s->setvt(in);
			GetDlgItemText(hdlg,IDC_BEGIN,in,2);
			s->setstart(*in);
			GetDlgItemText(hdlg,IDC_TEST,in,65535);
			s->settest(in);
			GetDlgItemText(hdlg,IDC_INPUT,in,65535);
			p=in;
			while(1)
			{
				i=0;
				while(*p>32)
					str[i++]=*p++;
				str[i]=0;
				if(i&&s->addp(str))
				{
					printout("有錯(cuò)誤!");
					return 1;
				}
				if(!*p++) break;
			}
			printout("正確!\r\n驗(yàn)證文法及測(cè)試字串......");
			if(i=s->check())
			{
				printout("錯(cuò)誤:");
				switch(-i)
				{
				case 1:printout("非終結(jié)符集無(wú)元素!");break;
				case 2:printout("終結(jié)符集無(wú)元素!");break;
				case 3:printout("非終結(jié)符集和終結(jié)符集有交集!");break;
				case 4:printout("沒有初始符!");break;
				case 5:printout("初始符不是非終結(jié)符!");break;
				case 6:printout("沒有產(chǎn)生式!");break;
				case 7:printout("沒有以初始符為左部的產(chǎn)生式!");break;
				case 8:printout("產(chǎn)生式左部有非法符號(hào)!");break;
				case 9:printout("產(chǎn)生式右部有非法符號(hào)!");break;
				case 10:printout("產(chǎn)生式有左遞歸!");break;
				case 11:printout("測(cè)試字串包含非法字符!");break;
				case 12:printout("測(cè)試字串不是以\'#\'結(jié)尾!");break;
				}
				break;
			}
			printout("正確!\r\n    FIRST集合:\r\n");
			s->dofirst();
			for(i=0;i<s->vn->getnum();i++)
			{
				s->first[i]->print(b);
				wsprintf(p,"First(%c) =%s\r\n",s->vn->getdata()[i],b);
				strcat(out,p);
			}
			printout("    FOLLOW集合:\r\n");
			s->dofollow();
			for(i=0;i<s->vn->getnum();i++)
			{
				s->follow[i]->print(b);
				wsprintf(p,"Follow(%c)=%s\r\n",s->vn->getdata()[i],b);
				strcat(out,p);
			}
			printout("    SELECT集合:\r\n");
			s->doselect();
			for(i=0;i<s->pnum;i++)
			{
				s->right[i]->print(b);
				wsprintf(p,"Select(%c->%s)",s->left[i],b);
				strcat(out,p);
				s->select[i]->print(b);
				wsprintf(p,"=%s\r\n",b);
				strcat(out,p);
			}
			printout("驗(yàn)證LL(1)文法......");
			if(s->checkll1())
			{
				printout("失敗!\r\n輸入的文法不是LL(1)文法!");
				break;
			}
			printout("合格!\r\n    文法預(yù)測(cè)分析表\r\n");
			s->doform();
			printout("--------------------------------------------------\r\n");
			for(i=0;i<s->vt->getnum();i++)
			{
				wsprintf(b,"\t%c",s->vt->getdata()[i]);
				printout(b);
			}
			printout("\t@");
			for(i=0;i<s->vn->getnum();i++)
			{
				wsprintf(b,"\r\n%c",s->vn->getdata()[i]);
				printout(b);
				for(j=0;j<=s->vt->getnum();j++)
				{
					printout("\t");
					if(s->m[i][j])
					{
						s->m[i][j]->print(b);
						printout(b);
					}
				}
			}
			printout("\r\n--------------------------------------------------\r\n");
			printout("    對(duì)測(cè)試字串的分析過程\r\n");
			printout("----------------------------------------\r\n");
			printout("分析棧\t剩余輸入串\t所用產(chǎn)生式\r\n");
			i=s->dotest(in);
			printout(in);
			if(i) printout("\t不匹配!\r\n");
			printout("----------------------------------------\r\n");
			SetCursor(LoadCursor(NULL,IDC_ARROW));
			break;
		case ID_HOWTO:
			MessageBox(hdlg,"1.輸入的文法不能含有#,空格,漢字,全角符號(hào).\n2.表示空時(shí)用\"@\".\n3.輸入的測(cè)試字串要以\"#\"結(jié)尾.","說(shuō)明",NULL);
			break;
		case ID_ABOUT:
			MessageBox(hdlg,"LL(1)語(yǔ)法分析系統(tǒng) 0.2\n2003.10.23\n作者:Dwing","關(guān)于",NULL);
			break;
		default:
			return 0;
		}
		return 1;
	case WM_CLOSE:
		EndDialog(hdlg,0);
	}
	return 0;
}

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
成人精品电影在线观看| 免费观看日韩av| 91丨porny丨户外露出| 国产精品毛片久久久久久久| 成人免费观看视频| 亚洲最快最全在线视频| 欧美日韩在线电影| 免费一级片91| 久久久.com| 91老司机福利 在线| 亚洲一区视频在线观看视频| 欧美日韩亚洲丝袜制服| 久久9热精品视频| 中文字幕精品一区二区三区精品 | 欧美日韩精品免费| 日韩成人伦理电影在线观看| 精品国产乱码久久久久久夜甘婷婷| 精品一区免费av| 综合久久一区二区三区| 欧美高清精品3d| 国产成人亚洲综合a∨婷婷| 中文字幕一区二区三区精华液| 在线精品视频一区二区三四| 视频一区二区欧美| 欧美国产97人人爽人人喊| 欧美丝袜丝交足nylons| 激情成人午夜视频| 亚洲黄色免费电影| 26uuu另类欧美亚洲曰本| 99久久夜色精品国产网站| 日韩和欧美一区二区| 中文字幕的久久| 欧美一区在线视频| 成人一区二区三区| 97精品视频在线观看自产线路二| 日韩国产一二三区| 中文字幕亚洲一区二区va在线| 91精品国产综合久久香蕉麻豆 | 精品视频1区2区3区| 久久精品国产色蜜蜜麻豆| 最新高清无码专区| 2023国产精品| 欧美久久久一区| 99久久精品国产一区| 精品一区二区影视| 亚洲一卡二卡三卡四卡| 国产日韩精品一区二区三区在线| 欧美日韩国产综合一区二区三区| 丰满白嫩尤物一区二区| 日本aⅴ免费视频一区二区三区| **网站欧美大片在线观看| 日韩亚洲欧美中文三级| 在线观看日韩av先锋影音电影院| 国产高清不卡二三区| 看片的网站亚洲| 日日夜夜免费精品视频| 亚洲精品乱码久久久久久日本蜜臀| 久久综合久久综合亚洲| 欧美电影一区二区三区| 欧美专区在线观看一区| 97精品电影院| 成人av第一页| 国产·精品毛片| 国产精品影视网| 狠狠色狠狠色综合日日91app| 亚洲123区在线观看| 一区2区3区在线看| 亚洲精品大片www| 亚洲视频你懂的| 亚洲欧美视频一区| 中文字幕一区二区三| 国产精品美女一区二区在线观看| 国产日韩欧美制服另类| 国产三区在线成人av| 国产亚洲自拍一区| 久久精品亚洲乱码伦伦中文| 精品国产91乱码一区二区三区| 91精品国产91热久久久做人人| 欧美精品123区| 91精品国产91久久综合桃花| 欧美一区二区视频网站| 日韩欧美二区三区| 精品久久久三级丝袜| 精品88久久久久88久久久| 2欧美一区二区三区在线观看视频| 欧美一区二区三区色| 精品日韩欧美在线| 久久久国产精品麻豆| 欧美韩国日本不卡| 成人白浆超碰人人人人| 成人国产精品免费观看| 99视频国产精品| 在线观看国产日韩| 337p亚洲精品色噜噜噜| 精品免费视频一区二区| 久久综合久久鬼色中文字| 亚洲国产岛国毛片在线| 亚洲视频你懂的| 亚洲va韩国va欧美va| 久久激情五月激情| www.激情成人| 欧美日韩电影在线播放| 精品久久久久久亚洲综合网 | 成人免费视频国产在线观看| 成人精品国产免费网站| 在线观看成人免费视频| 欧美一区二区三区免费观看视频 | 久久久久国产一区二区三区四区| 国产欧美日韩卡一| 一区二区不卡在线播放 | 欧美精品一区二区三区蜜桃 | 免费在线看一区| 国产精品一区在线观看乱码| 99精品视频在线观看| 欧美精品亚洲一区二区在线播放| 欧美变态tickle挠乳网站| 中文字幕 久热精品 视频在线| 亚洲美女区一区| 精品一区二区三区在线观看 | 久久精品亚洲精品国产欧美| 亚洲欧美国产三级| 久久99国产精品久久| 91免费国产视频网站| 日韩视频一区在线观看| 亚洲欧洲精品一区二区三区| 日韩不卡一二三区| av电影在线观看不卡| 日韩欧美国产1| 一区二区欧美视频| 国产电影一区二区三区| 欧美日韩免费一区二区三区视频| 国产日韩在线不卡| 奇米四色…亚洲| 91精品福利视频| 国产欧美一区二区在线观看| 日韩精品国产精品| 色哟哟亚洲精品| 亚洲国产精品精华液2区45| 日本午夜精品视频在线观看 | 国产激情一区二区三区| 777亚洲妇女| 亚洲精品国产第一综合99久久| 国产精品一区二区三区乱码| 7777精品伊人久久久大香线蕉| 亚洲欧洲无码一区二区三区| 国产美女精品一区二区三区| 这里只有精品免费| 亚洲午夜三级在线| 91欧美激情一区二区三区成人| www激情久久| 久久丁香综合五月国产三级网站| 欧美在线视频你懂得| 亚洲视频每日更新| 成人福利视频在线| 国产欧美一区在线| 国产成人啪午夜精品网站男同| 日韩欧美中文字幕一区| 日韩国产欧美在线视频| 9191成人精品久久| 视频一区视频二区中文| 欧美日本免费一区二区三区| 亚洲一区二区三区视频在线 | av在线这里只有精品| 日本一区二区三区四区在线视频| 韩国av一区二区三区四区| 日韩欧美在线观看一区二区三区| 日韩电影免费在线看| 欧美精品第1页| 日韩国产精品久久| 欧美一区二区三区视频免费| 蜜桃视频一区二区| wwwwww.欧美系列| 国产成都精品91一区二区三| 国产日韩在线不卡| 99精品视频在线观看| 亚洲欧美另类久久久精品2019 | 欧美特级限制片免费在线观看| 洋洋成人永久网站入口| 欧美亚洲动漫制服丝袜| 天堂精品中文字幕在线| 日韩欧美国产1| 国产精品91xxx| 亚洲视频一区二区免费在线观看| 一本久道中文字幕精品亚洲嫩| 亚洲永久免费视频| 日韩一区二区在线观看| 国精品**一区二区三区在线蜜桃| 国产欧美视频在线观看| 色菇凉天天综合网| 日韩有码一区二区三区| 精品成人佐山爱一区二区| 成人一区二区三区视频在线观看| 综合久久综合久久| 欧美精品欧美精品系列| 久久精品国产一区二区三| 中文子幕无线码一区tr| 欧美做爰猛烈大尺度电影无法无天| 偷拍与自拍一区| 国产欧美日韩另类视频免费观看 | 天天做天天摸天天爽国产一区 |