对于栈的插入,即进栈操作,其实就是做了如图4-4-3所示的处理。
    image.png
    因此对于进栈操作push,其代码如下:

    1. /* 插入元素e为新的栈顶元素 */
    2. Status Push(SqStack *S, SElemType e){
    3. /* 栈满 */
    4. if (S->top == MAXSIZE - 1){
    5. return ERROR;
    6. }
    7. /* 栈顶指针增加一 */
    8. S->top++;
    9. /* 将新插入元素赋值给栈顶空间 */
    10. S->data[S->top] = e;
    11. return OK;
    12. }