轉至:http://www.nowamagic.net/librarys/veda/detail/2276
獲取順序棧的棧頂元素 GetTop (S,*e):若棧存在且非空,用e返回S的棧頂元素。參考之前線性表的話,就是設一個存儲棧頂的變量 e,然後通過地址傳遞,用 *e 來保存指針爲 top 的數組元素。
函數的設計如下:
/* 若棧不空,則用e返回S的棧頂元素,並返回OK;否則返回ERROR */
Status GetTop(SqStack S,SElemType *e)
{
if (S.top==-1)
return ERROR;
else
*e=S.data[S.top];
return OK;
}
判斷棧是否爲空:
/* 若棧S爲空棧,則返回TRUE,否則返回FALSE */
Status StackEmpty(SqStack S)
{
if (S.top==-1)
return TRUE;
else
return FALSE;
}
置空棧:/* 把S置爲空棧 */
Status ClearStack(SqStack *S)
{
S->top=-1;
return OK;
}