//直接上代码
#include "stdio.h"
#include "stdlib.h"
#include <malloc.h>
#define SElemType int
#define Status int
#define ok 1
#define error 1
//========链栈的存储结构===============
typedef struct StackNode
{
SElemType data;
struct StackNode *next;
}StackNode,*LinkStack;
Status InitStack(LinkStack &S)
{
//构造一个空栈S,栈顶指针置空
S=NULL;
return ok;
}
Status Push(LinkStack &S,SElemType e)
{
//在栈顶插入元素e
LinkStack p;
p=new StackNode; //生成新节点
p->data=e;
p->next=S;
S=p;
return ok;
}
Status Pop(LinkStack &S,SElemType &e)
{
//删除S的栈顶元素,用e返回其值
LinkStack p;
if(S=NULL) return error;
e=S->data;
p=S;
S=S->next;
delete p;
return ok;
}
SElemType GetTop(LinkStack S)
{
//返回S的栈顶元素,不修改栈顶指针
if(S!=NULL) //栈非空
return S->data;
}
int main()
{
return 0;
}