#include "Stack.h"
#include <assert.h>
// define the Data Structure
typedef struct {
char item[MAXITEMS];
int top;
} stackRep;
// define the Data Object
static stackRep stackObject;
// set up empty stack
void StackInit() {
stackObject.top = -1;
}
// check whether stack is empty
int StackIsEmpty() {
return (stackObject.top < 0);
}
|
|
// insert char on top of stack
void StackPush(char ch) {
assert(stackObject.top < MAXITEMS-1);
stackObject.top++;
int i = stackObject.top;
stackObject.item[i] = ch;
}
// remove char from top of stack
char StackPop() {
assert(stackObject.top > -1);
int i = stackObject.top;
char ch = stackObject.item[i];
stackObject.top--;
return ch;
}
|
|