//定义
typedef struct
{
SElemType *base; //栈底指针
SElemType *top; //栈顶指针
int stacksize; //栈可用的最大容量
}SqStack;
//初始化,构建一个空栈
/*--------------------------------------------------*
*
* 顺序栈初始化就是为顺序栈动态分配一个预定义大小的数组空间
*
* --------------------------------------------------*/
status InitStack(SqStack &s)
{
s.base = new SElemType[MaxSize]; //为顺序栈动态分配一个最大容量为MaxSize的数组空间
if (!s.base) //分配失败
exit(overflow);
s.top = s.base ; //top初始值为base,空栈
s.stacksize = MaxSize; //stacksize置为栈的最大容量MaxSize
return ok;
}
//判空
status StackEmpty (SqStack s)
{
if (s.top == s.base) //判空标志,栈顶指针 指向 栈底指针
return ok;
else
return error;
}
//入栈
/*-----------------------
顺序栈的基本操作代码块
于 2022-05-03 21:21:49 首次发布