資源簡介
LR0分析表自動生成程序_界面輸入產生式自動生成LR0分析表
用棧的方法實現LR0算法(給定文法)
代碼片段和文件信息
//?AnalyzeDlg.cpp?:?implementation?file
//
#include?“stdafx.h“
#include?“LR0ForWin.h“
#include?“AnalyzeDlg.h“
#include?
#include?
#include?“Pair.h“
using?namespace?std;
#ifdef?_DEBUG
#define?new?DEBUG_NEW
#undef?THIS_FILE
static?char?THIS_FILE[]?=?__FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
//?CAnalyzeDlg?dialog
CAnalyzeDlg::CAnalyzeDlg(CWnd*?pParent?/*=NULL*/)
:?CResizingDialog(CAnalyzeDlg::IDD?pParent)
{
//{{AFX_DATA_INIT(CAnalyzeDlg)
m_input?=?_T(““);
//}}AFX_DATA_INIT
m_strTempFilename?=?““;
m_pTree?=?new?CTreeDlg;
m_pTree->Create(IDD_DIALOG3?this);
m_pTree->SetControlInfo(IDC_TREE1?RESIZE_BOTH);
m_pTree->SetControlInfo(IDOK?ANCHORE_BOTTOM?|?ANCHORE_RIGHT);
}
CAnalyzeDlg::~CAnalyzeDlg()
{
m_pTree->DestroyWindow();
delete?m_pTree;
}
void?CAnalyzeDlg::DoDataExchange(CDataExchange*?pDX)
{
CResizingDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CAnalyzeDlg)
DDX_Control(pDX?IDC_EDIT1?m_edit1);
DDX_Control(pDX?IDC_EXPLORER1?m_web);
DDX_Text(pDX?IDC_EDIT1?m_input);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(CAnalyzeDlg?CResizingDialog)
//{{AFX_MSG_MAP(CAnalyzeDlg)
ON_BN_CLICKED(IDC_BUTTON1?OnButton1)
ON_BN_CLICKED(IDC_BUTTON2?OnButton2)
ON_WM_ACTIVATE()
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
//?CAnalyzeDlg?message?handlers
void?CAnalyzeDlg::OnOK()?
{
//?TODO:?Add?extra?validation?here
//CDialog::OnOK();
}
void?CAnalyzeDlg::OnCancel()?
{
//?TODO:?Add?extra?cleanup?here
if?(m_strTempFilename?!=?““)
DeleteFile(m_strTempFilename.c_str());
CResizingDialog::OnCancel();
}
void?CAnalyzeDlg::OnButton1()?
{
//?TODO:?Add?your?control?notification?handler?code?here
UpdateData(TRUE);
m_pTree->m_tree.DeleteAllItems();
for(int?i?=?0;?i? {
if?(!m_g.IsInVt(m_input.GetAt(i)))
{
MessageBox(“輸入的句子不全部由終結符組成“?“錯誤“?MB_OK?|?MB_IConstop);
return;
}
}
assert(TreeStack.empty());
m_input?+=?“#“;
char?szTempPath[MAX_PATH];?
char?szTempName[MAX_PATH];?
if?(m_strTempFilename?!=?““)
::DeleteFile(m_strTempFilename.c_str());
::GetTempPath(100szTempPath);
::GetTempFileName(szTempPath“LR0“0szTempName);
m_strTempFilename?=?szTempName;
CStdioFile?out;
out.Open(szTempName?CFile::modeCreate?|?CFile::modeWrite);
out.WriteString(“\n“);
out.WriteString(“\n“);
out.WriteString(“tle>Untitled?Document tle>\n“);
out.WriteString(“ta?http-equiv=\“Content-Type\“?content=\“text/html;?charset=gb2312\“>\n“);
out.WriteString(“\n“);
out.WriteString(“\n“);
out.WriteString(“yle=\“border-collapse:?collapse\“?bordercolor=\“#111111\“>\n“);
out.WriteString(“\n 步驟 \n 狀態棧<
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件?????733125??2009-04-23?19:24??LR(0)分析表\LR(0)分析表.rar
?????文件????????123??2008-06-20?14:51??LR(0)分析表\編譯原理課程設計\代碼\1.txt
?????文件????????115??2008-06-20?14:52??LR(0)分析表\編譯原理課程設計\代碼\2.txt
?????文件?????????98??2008-06-20?14:54??LR(0)分析表\編譯原理課程設計\代碼\3.txt
?????文件????????131??2008-06-20?14:57??LR(0)分析表\編譯原理課程設計\代碼\4.txt
?????文件????????155??2008-06-20?14:57??LR(0)分析表\編譯原理課程設計\代碼\5.txt
?????文件???????8355??2008-06-20?15:07??LR(0)分析表\編譯原理課程設計\代碼\AnalyzeDlg.cpp
?????文件???????1917??2008-06-20?15:07??LR(0)分析表\編譯原理課程設計\代碼\AnalyzeDlg.h
?????文件?????166312??2009-04-24?02:42??LR(0)分析表\編譯原理課程設計\代碼\Debug\AnalyzeDlg.obj
?????文件??????????0??2009-04-24?02:42??LR(0)分析表\編譯原理課程設計\代碼\Debug\AnalyzeDlg.sbr
?????文件??????63606??2009-04-24?02:42??LR(0)分析表\編譯原理課程設計\代碼\Debug\explorer.obj
?????文件??????????0??2009-04-24?02:42??LR(0)分析表\編譯原理課程設計\代碼\Debug\explorer.sbr
?????文件???????3249??2009-04-24?02:42??LR(0)分析表\編譯原理課程設計\代碼\Debug\GoData.obj
?????文件??????????0??2009-04-24?02:42??LR(0)分析表\編譯原理課程設計\代碼\Debug\GoData.sbr
?????文件?????186415??2009-04-24?02:42??LR(0)分析表\編譯原理課程設計\代碼\Debug\Grammar.obj
?????文件??????????0??2009-04-24?02:42??LR(0)分析表\編譯原理課程設計\代碼\Debug\Grammar.sbr
?????文件????3589120??2009-04-24?02:42??LR(0)分析表\編譯原理課程設計\代碼\Debug\LR0ForWin.bsc
?????文件?????233569??2009-05-03?06:01??LR(0)分析表\編譯原理課程設計\代碼\Debug\LR0ForWin.exe
?????文件?????590996??2009-05-03?06:01??LR(0)分析表\編譯原理課程設計\代碼\Debug\LR0ForWin.ilk
?????文件??????15544??2009-04-24?02:42??LR(0)分析表\編譯原理課程設計\代碼\Debug\LR0ForWin.obj
?????文件????7140716??2009-04-24?02:42??LR(0)分析表\編譯原理課程設計\代碼\Debug\LR0ForWin.pch
?????文件?????918528??2009-05-03?06:01??LR(0)分析表\編譯原理課程設計\代碼\Debug\LR0ForWin.pdb
?????文件???????4612??2009-04-24?02:33??LR(0)分析表\編譯原理課程設計\代碼\Debug\LR0ForWin.res
?????文件??????????0??2009-04-24?02:42??LR(0)分析表\編譯原理課程設計\代碼\Debug\LR0ForWin.sbr
?????文件??????69567??2009-05-03?06:01??LR(0)分析表\編譯原理課程設計\代碼\Debug\LR0ForWinDlg.obj
?????文件??????????0??2009-04-24?02:42??LR(0)分析表\編譯原理課程設計\代碼\Debug\LR0ForWinDlg.sbr
?????文件???????3862??2009-04-24?02:42??LR(0)分析表\編譯原理課程設計\代碼\Debug\Pair.obj
?????文件??????????0??2009-04-24?02:42??LR(0)分析表\編譯原理課程設計\代碼\Debug\Pair.sbr
?????文件??????17524??2009-04-24?02:42??LR(0)分析表\編譯原理課程設計\代碼\Debug\Precept.obj
?????文件??????????0??2009-04-24?02:42??LR(0)分析表\編譯原理課程設計\代碼\Debug\Precept.sbr
............此處省略66個文件信息
- 上一篇:SaaS模式下企業信息管理平臺的研究與實現
- 下一篇:數字水印 好的外文文獻
評論
共有 條評論
相關資源
-
易語言編譯原理 易語言循環首尾配對
-
編譯原理實驗工具及參考源碼(lex&
-
類pascal語言編譯器(編譯原理實驗)
-
編譯原理課程設計:詞法語法編譯器
-
中科院 編譯原理 習題及解答
-
編譯原理四元式和逆波蘭式
-
《編譯原理》清華大學版中的pl0擴充
-
PL/0功能擴充break功能
-
編譯原理LR(0)語法分析
-
編譯原理中間代碼生成程序
-
編譯原理:LR分析程序
-
編譯原理實驗:詞法分析,語法分析
-
吉林大學編譯原理課件
-
編譯原理龍書答案
-
編譯原理 第三章課后習題答案
-
易語言變量和數組的編譯原理
-
編譯原理語法分析器、詞法分析器
-
山東大學編譯原理PL/0語言 compiler實驗
-
FOR循環語句的翻譯程序設計簡單優先
-
NFA的確定化NFA->DFA完整可運行代碼
-
哈工大威海編譯原理實驗報告和源代
-
哈工大威海-編譯原理實驗報告和源碼
-
編譯原理課設c編譯器
-
賦值語句翻譯四元式
-
河北工業大學編譯原理實驗代碼及實
-
編譯原理課程設計 while do循環語句翻
-
編譯原理課程設計do——while簡單優先
-
南開大學編譯原理課件及作業
-
華工往年編譯原理試卷
-
編譯原理課程設計for循環LR法三元式