Pilha de Inteiros (versão simples): Difference between revisions
From Wiki**3
No edit summary |
|||
| (One intermediate revision by the same user not shown) | |||
| Line 27: | Line 27: | ||
== Ver Também == | == Ver Também == | ||
* [[Pilha de | * [[Pilha de Strings (controlo de falha)|Pilha de strings com retorno de falha]] | ||
Latest revision as of 08:44, 12 November 2008
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; }