scannerdlg.h
来自「通过设计编制调试一个具体的词法分析程序」· C头文件 代码 · 共 75 行
H
75 行
// ScannerDlg.h : header file
//
//{{AFX_INCLUDES()
#include "richtext.h"
//}}AFX_INCLUDES
#if !defined(AFX_SCANNERDLG_H__8A20725E_29A6_40CE_9E19_B1100D493402__INCLUDED_)
#define AFX_SCANNERDLG_H__8A20725E_29A6_40CE_9E19_B1100D493402__INCLUDED_
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
/////////////////////////////////////////////////////////////////////////////
// CScannerDlg dialog
class CScannerDlg : public CDialog
{
// Construction
public:
CString GetAllConst();//将常数表转化为字符串
CString GetAllId();//将标识符表转化为字符串
CStringArray ConstList;//常数表
CStringArray IdList;//标识符表
CString StrToken;//单词符号
CString StrOut;//词法分析结果
CString NewStr;//预处理源程序
CString StrIn;//初始源程序
CScannerDlg(CWnd* pParent = NULL); // standard constructor
// Dialog Data
//{{AFX_DATA(CScannerDlg)
enum { IDD = IDD_SCANNER_DIALOG };
CRichText m_nInput;//输入文本控件
CRichText m_nOutput;//输出文本控件
//}}AFX_DATA
// ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(CScannerDlg)
protected:
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
//}}AFX_VIRTUAL
// Implementation
protected:
HICON m_hIcon;
// Generated message map functions
//{{AFX_MSG(CScannerDlg)
virtual BOOL OnInitDialog();
afx_msg void OnPaint();
afx_msg HCURSOR OnQueryDragIcon();
afx_msg void OnInOpen();//文件输入
afx_msg void OnInSave();//输入保存
afx_msg void OnOutSave();//输出保存
afx_msg void OnPredo();//预处理按钮事件
afx_msg void OnScan();//词法分析按钮事件
afx_msg void OnListView();//列表显示按钮事件
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
private:
void InsertConst(CString str);//将常数插入常数表
void InsertId(CString str);//将标识符插入标识符表
void Scan();//词法分析
void PreProcess();//预处理
CString Reserve(CString strToken);//关键字的判断
BOOL IsSpace(char ch);//判断字符是否为空白符
BOOL IsLetter(char ch);//判断字符是否为字母
BOOL IsDigit(char ch);//判断字符是否为数字
};
//{{AFX_INSERT_LOCATION}}
// Microsoft Visual C++ will insert additional declarations immediately before the previous line.
#endif // !defined(AFX_SCANNERDLG_H__8A20725E_29A6_40CE_9E19_B1100D493402__INCLUDED_)
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?