.h
#ifndef STATCK_H
#define STATCK_H
class statck
{
public:
statck(int len);
~statck();
int isempty();
int isfull();
void push(char data);
char pop();
private:
int len;
int top;
char *space;
};
#endif
.cpp
#include "statck.h"
#include <stdlib.h>
statck::statck(int len)
{
space = (char*)malloc(sizeof(char)*len);
this->len = len;
top = 0;
}
int statck::isempty()
{
return top == 0;
}
int statck::isfull()
{
return top == len;
}
void statck::push(char data)
{
space[top++] = data;
}
char statck::pop()
{
return space[--top];
}
statck::~statck()
{
free(space);
}
main
#include <iostream>
#include "statck.h"
using namespace std;
int main(int argc, char *argv[])
{
statck st(10);
if(!st.isfull())
{
for(char i = 'a';i<'z';i++)
{
st.push(i);
}
}
while(!st.isempty())
{
cout<<st.pop()<<endl;
}
return 0;
}