zoukankan      html  css  js  c++  java
  • 数据结构3_顺序栈

    顺序栈的实现,包含分配地址空间,出栈,入栈,显示等功能函数

     
    #include<iostream>
    #define STACK_INIT_SIZE 100;
    #define STACKINCREMENT 10;
    using namespace std;
    class SqlStack
    {
        char **base;
        char **top;
        int stacksize;
    public:
        SqlStack()
        {
            base=new char*[100];   //这里[]中本来应输入STACK_INIT_SIZE,单是程序始终报错,不知道是不是二重指针的关系,
            if(!base)
            {
                cout<<"OVERFLOW"<<endl;
                return;
            }
            top=base;
            stacksize=STACK_INIT_SIZE;
        
        }
        void push(char *e)
        {
            if(top-base>=stacksize)
            {
                cout<<"OVERFLOW"<<endl;
                return;
            }
            *this->top=new char(sizeof(e)+1); 
            strcpy(*this->top,e);
            top++;
        }
        void pop(char *&e)
        {
            if(top==base)
            {
                cout<<"the stack is empty"<<endl;
                return;
            }
            e=new char(sizeof(*top)+1);
            strcpy(e,*--top);
        }
        void show()
        {
            while(top!=base)
            {
                cout<<*--top<<endl;
            }
        }
    };
    void main()
    {
        SqlStack a;
        a.push("stack1");
        a.push("test");
        a.push("lock");
        char *out;
        a.pop(out);
        cout<<out<<endl;
        a.push("test123");
        a.show();
    }





  • 相关阅读:
    电商工具 谷歌插件 版本 2021-03-04
    PowerDesigner 自定义脚本
    MapReduce案例之寻找共同好友
    Hadoop之MapReduce开发总结
    python之文件操作
    python字典、集合
    python元组
    python列表练习
    python之列表
    python之编码解码、字符串常用方法
  • 原文地址:https://www.cnblogs.com/zhuangwy-cv/p/3737156.html
Copyright © 2011-2022 走看看