📄 main.cpp
字号:
#include "function.h"
void main ()
{
//////////////////////输入////////////////////////////////////////
cout<<"Input expression(input # to the end):";
for(position=1;;position++) //输入表达式,下标从1开始
{
cin>>buffer[position];
if (buffer[position]=='#')
break;
}
//////////////////////////////////////////////////////////////////
////////////////////////////表达式求值/////////////////////////////////
for(int i=0;i<100;i++) //初始化,实现多次运行
{
table[i].evaluated=false;
strcpy(table[i].name,"");
}
array.top=-1;
total=0;
number=1;
position=0;
gettoken();
expre();
if(isok==true) //程序正常结束才输出结果
cout<<"The result = "<<array.Pop()<<endl;
for(i=1;i<=total;i++)
cout<<table[i].name<<" "<<table[i].value<<endl;
///////////////////////////////////////////////////////////////////////////
///////////////////////////生成语法树///////////////////////////////////////
for(i=0;i<100;i++)
{
table[i].evaluated=false;
strcpy(table[i].name,"");
}
position=1;
gettoken2();
node *root=expr2();
cout<<endl<<"语法树如下:"<<endl;
printtree(root);
/////////////////////////////////////////////////////////////////////////////
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -