【文件属性】:
文件名称:赋值语句翻译c++(编译原理)
文件大小:6KB
文件格式:CPP
更新时间:2012-06-14 13:56:31
赋值语句翻译
#include
#include
#include
using namespace std;
#define INFEASIBLE -1
#define OVERFLOW -2
#define STACK_INIT_SIZE 100
#define STACKINCREMENT 10
typedef char SElemType;
typedef char ElemType;
struct STACK
{
SElemType * base;
SElemType * top;
int stacksize;
};
int InitStack(STACK &S);
char GetTop(STACK &S);
int Push (STACK &S,SElemType e);//插入e为新的栈顶元素
int Pop (STACK &S,STACK &H,int m);//若栈不空,则删除S的栈顶元素
int EmptyStack(STACK &S);//判断栈S是否为空
int cmp(char a,char b);//判断运算符a的优先级是否高于运b
void cmp(char a,char b,STACK &f,STACK &h);//判断运算符a和b的优先级
int main()
{
STACK h1;
InitStack(h1);//定义并初始化逆序的逆波兰式栈h1
STACK h2;
InitStack(h2);//定义并初始化正序的逆波兰式栈h2
STACK fh;
InitStack(fh);//定义并初始化符号栈fh
Push(fh,'#');//将#压入符合栈
string z;
int a;
kind1:
cout<<"***************************************"<>z;
for(int i=0;i