/*pila.h*/

// Definizione della struttura dati in grado
// di contenere una pila di interi.
struct pila {
// Il vettore verrā allocato dinamicamente
int *v;
int testa;
// Lunghezza del vettore v una volta allocato
int lunghezza;
};

// Inizializzazione della struttura; verrā allocato
// un vettore della lunghezza indicata.
void inizializza (pila&, int);

// Cancellazione della coda: servirā a liberare il vettore.
void termina (pila&);

// Inserimento di un intero in una pila
void push (pila&, int);

// Estrazione di un intero da una pila e sua restituzione
int pop (pila&);

// Lettura senza estrazione da una pila
int top (pila&);

// Eliminazione senza lettura di un intero da una pila
void drop (pila&);

// Verifica se una pila č vuota
bool vuota (pila&);