首页 > 试题广场 >

算法填空

[填空题]
算法填空
typedef struct {
char *base;
char *top;
int stacksize;
}SqStack;
void Pop (SqStack *S0, char *e)  {
//若栈不空,则删除栈顶元素,用e返回其值。
if(S0->TOP==1)   return;
2
*e=*3
}
在这里stacksize并不指栈中目前元素的数量,而是初始化栈时,new的内存的大小。
栈内元素的数模是由top-base决定的。
其中top指向的是栈顶,base是栈底。当base与top相等时,栈为空。
执行出栈时,可以将top减1,然后将top指向的值返回即可。top是栈顶,栈顶指向的值并不属于栈中的元素。

1 base
2 S0->TOP--
3 S0->TOP
参考答案 
(1) S0->base
(2) --(S0->TOP)
(3) S0->top
发表于 2017-07-10 12:07:00 回复(0)
e不是返回的原栈顶元素值么?
2
SqStack->stacksize--
3 SqStack->top--
发表于 2017-07-06 22:34:56 回复(0)
stacksize不需要减一吗?
发表于 2017-06-14 16:35:52 回复(0)
有谁可以解释下  base指啥 ? 还有为啥要 --之后才将e赋给top
发表于 2017-06-03 07:59:44 回复(3)