Chinaunix首页 | 论坛 | 博客
  • 博客访问: 112556
  • 博文数量: 23
  • 博客积分: 975
  • 博客等级: 准尉
  • 技术积分: 262
  • 用 户 组: 普通用户
  • 注册时间: 2008-07-19 00:54
文章分类
文章存档

2011年(2)

2010年(3)

2008年(18)

我的朋友

分类:

2008-07-19 02:17:44


#define STACK_INIT_SIZE 100

typedef struct
{
 char *base;
 char *top;
 int stacksize;
}sqstack;

int initstack(sqstack &s)//初始化

{
 s.base=(char *)malloc(sizeof(char)*STACK_INIT_SIZE);
 if(!s.base) exit(-2);
 s.top=s.base;
 s.stacksize=STACK_INIT_SIZE;
 return 1;
}

int gettop(sqstack s,char &e)//取栈顶

{
 if(s.top==s.base) return 0; //栈空

 e=*(s.top-1);
 return 1;
}

int push(sqstack &s,char e)//入栈

{
 *s.top++=e;
 return 1;
}

int pop(sqstack &s,char &e)//出栈

{
 if(s.top==s.base) return 0; //栈空

 e=*--s.top;
 return 1;
}

阅读(883) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~