何婧琳 2022-04-02 00:13 采纳率: 55.6%
浏览 37
已结题

顺序栈一定要有top和base吗?

img

如果前面的代码是这样的,请问如何初始化顺序栈呢?这个和书上给的也不一样

  • 写回答

3条回答 默认 最新

  • 何以见秋风 2022-04-02 11:24
    关注

    栈底没有必要搞个函数吧,因为数组下标0就是栈底,栈顶的话,看你top咋初始化,top = 0,top就是top-1位置,top = -1,top在top位置。
    至于你初始化参数部分我没咋看懂什么意思啊,为什么你用C语言语法,还要用C++引用。都用引用了直接用bool类型不过分吧

    #define MAX 100
    //#define OK 1
    //#define ERROR 0
    typedef int STDataType;
    
    typedef struct Stack
    {
        STDataType data[MAX];
        int top;
    }ST;
    
    bool StackInit(ST& st)
    {
        //我觉得data都不用初始化,如果是用指针其实直接给个NULL就完成了
        //for (int i = 0;i < MAX;i++)
        //{
            //st.data[i] = 0;
        //}
        st.top = 0;
        //st.top = -1;
    
        return true;
    }
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 4月10日
  • 已采纳回答 4月2日
  • 修改了问题 4月2日
  • 创建了问题 4月2日