/* $Id: stack.c,v 1.3 2004/03/23 04:50:13 jmuelmen Exp $ */ /* Simple integer stack */ #include #include #include "stack.h" void stack_init (stack_t *s) { s->n_stack = 0; } int stack_push (stack_t *s, int i) { if (s->n_stack == STACK_SIZE) { fprintf(stderr, "Stack: out of stack.\n"); exit(1); } return s->stack[s->n_stack++] = i; } int stack_pop (stack_t *s) { if (!s->n_stack) { fprintf(stderr, "Stack: attempted to pop from empty stack.\n"); exit(1); } return s->stack[--s->n_stack]; }