File: stack.h

package info (click to toggle)
0ad 0.0.23.1-2
  • links: PTS, VCS
  • area: main
  • in suites: buster
  • size: 78,292 kB
  • sloc: cpp: 245,166; ansic: 200,249; python: 13,754; sh: 6,104; perl: 4,620; makefile: 977; xml: 810; java: 533; ruby: 229; erlang: 46; pascal: 30; sql: 21; tcl: 4
file content (27 lines) | stat: -rw-r--r-- 476 bytes parent folder | download | duplicates (12)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
#ifndef STACK_H
#define STACK_H

#ifdef __cplusplus
  extern "C" {
#endif

  typedef struct stack_t {
    int size;
    int* vals;
    int capacity;
  } stack_t;

  stack_t* stack_create();
  void     stack_free(stack_t* stack);
  int      stack_size(stack_t* stack);
  void     stack_push(stack_t* stack, int val);
  int      stack_pop(stack_t* stack);
  int      stack_peak(stack_t* stack);
  int      stack_capacity(stack_t* stack);

#ifdef __cplusplus
  }
#endif


#endif