资源简介
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 < m_input.GetLength(); 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模式下企业信息管理平台的研究与实现
- 下一篇:数字水印 好的外文文献
相关资源
-
编译原理与实践课后习题答案中文英
-
编译原理_第二版_(陈意云_著)_高等
-
OpenMP编译原理及实现技术
-
Pascal语义分析器
-
西北农林科技大学编译原理实验
-
编译原理-何炎祥-华中理工大学出版社
-
编译原理课件(龙书为教材).ppt267
-
Parsing Techniques 英文带书签版
-
编程演示三种存储管理方式的地址换
-
编译原理龙书部分答案1-9
-
编译原理 第二版 龙书 习题答案
-
编译原理陈火旺第三版课本及其答案
-
编译原理实验题——PL/0语言编译器设
-
编译原理课件和每章作业答案
-
四川大学软件学院《编译原理》近三
-
西安电子科技大学编译原理考试题2
-
编译原理 (第二版) 张素琴
-
编译原理简单赋值语句的语法分析程
-
编译原理实验TINY+编译器
-
编译原理课后答案清华大学出版社
-
编译原理语法分析器课程设计
-
编译原理——for循环语句的翻译,L
-
清华《编译原理》课后习题答案
-
编译原理 清华ppt 课件
-
编译原理及实现技术 第二版 刘磊等编
-
词法分析器Lex(编译原理)
-
编译原理学习指导与习题解析
-
四川大学编译原理2011-2015期末考题
-
编译原理课程辅导+清华大学计算机系
-
北京邮电大学编译原理期末试卷
评论
共有 条评论