📄 main.h
字号:
//---------------------------------------------------------------------------
#ifndef mainH
#define mainH
//---------------------------------------------------------------------------
#include <Classes.hpp>
#include <Controls.hpp>
#include <StdCtrls.hpp>
#include <Forms.hpp>
#include <Dialogs.hpp>
//---------------------------------------------------------------------------
class TForm1 : public TForm
{
__published: // IDE-managed Components
TEdit *Edit1;
TLabel *Label1;
TMemo *Memo1;
TGroupBox *GroupBox1;
TGroupBox *GroupBox2;
TGroupBox *GroupBox3;
TMemo *Memo2;
TMemo *Memo3;
TButton *Button1;
TButton *Button2;
TButton *Button3;
TButton *Button4;
TButton *Button5;
TOpenDialog *OpenDialog1;
TSaveDialog *SaveDialog1;
void __fastcall Button5Click(TObject *Sender);
void __fastcall Button3Click(TObject *Sender);
void __fastcall Button1Click(TObject *Sender);
void __fastcall Button4Click(TObject *Sender);
void __fastcall Button2Click(TObject *Sender);
private:
//int count=0; /*分解的产生式的个数*/
int number; /*所有终结符和非终结符的总数*/
char starter; /*开始符号*/
char termin[50]; /*终结符号*/
char non_ter[50]; /*非终结符号*/
char v[50]; /*所有符号*/
char left[50]; /*左部*/
char right[50][50]; /*右部*/
char first[50][50],follow[50][50]; /*各产生式右部的FIRST和左部的FOLLOW集合*/
char first1[50][50]; /*所有单个符号的FIRST集合*/
char select[50][50]; /*各单个产生式的SELECT集合*/
char f[50],F[50]; /*记录各符号的FIRST和FOLLOW是否已求过*/
char empty[20]; /*记录可直接推出^的符号*/
char TEMP[50]; /*求FOLLOW时存放某一符号串的FIRST集合*/
//int validity=1; /*表示输入文法是否有效*/
//int ll=1; /*表示输入文法是否为LL(1)文法*/
int M[20][20]; /*分析表*/
//char choose; /*用户输入时使用*/
char empt[20]; /*求_emp()时使用*/
char fo[20]; /*求FOLLOW集合时使用*/
bool open;
char p[50][50];
public: void __fastcall ISVT(char *termin,char *non_ter);
bool __fastcall SameVT(char buf,int nvtnum);
bool __fastcall IsInNVT(char buf,int vtnum);
int __fastcall Isright(int line);
__fastcall TForm1(TComponent* Owner);
int __fastcall in(char c,char *p);
char __fastcall c();
void __fastcall recur(char *point);
void __fastcall non_re(char *point);
char __fastcall grammer(char *t,char *n,char *left,char right[50][50]);
void __fastcall merge(char *d,char *s,int type);
void __fastcall emp(char c);
int __fastcall _emp(char c);
int __fastcall judge();
void __fastcall first2(int i);
void __fastcall FIRST(int i,char *p);
void __fastcall FOLLOW(int i);
int __fastcall ll1();
void __fastcall MM();
void __fastcall syntax();
};
//---------------------------------------------------------------------------
extern PACKAGE TForm1 *Form1;
//---------------------------------------------------------------------------
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -