⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 main.cpp

📁 编译原理实验
💻 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 + -