Pilha de Inteiros (versão simples)
From Wiki**3
Neste exemplo, apresenta-se uma implementação simples de uma pilha de inteiros.
A pilha utiliza um vector para o armazenamento de dados.
#define MAXVALUE 1000 static int st_value[MAXVALUE]; static int st_top = -1;
As funções push e pop inserem e removem items da pilha.
void push(int value) {
if (!is_full())
st_value[++st_top] = value;
}
int pop() {
if (!is_empty())
return st_value[st_top--];
return -1;
}
Os predicados is_empty e is_full devolvem informação sobre o estado da pilha.
int is_empty() { return st_top == -1; }
int is_full() { return st_top == MAXVALUE-1; }