#ifndef STACK_H
#define STACK_H

#include <stdio.h>
#include <stdlib.h>

#define MAX_ELEMENTS 100

typedef struct {
	int index;
	int *elements
} Stack;

// initialize data structure
void stack_create(Stack *s);

// remove data allocated by stack_create
void stack_delete(Stack *s);

// push
void stack_push(Stack *s, int v);

// pop
void stack_pop(Stack *s);

// return element on top
int stack_top(Stack *s);

// return 1 if stack is empty, 0 otherwise
int stack_is_empty(Stack *s);

#endif

