aboutsummaryrefslogtreecommitdiff
path: root/stack2.c
diff options
context:
space:
mode:
authorThomas Schmucker <ts@its1.de>2020-10-04 14:36:07 +0200
committerThomas Schmucker <ts@its1.de>2020-10-04 14:36:07 +0200
commit6fb072f62c2f50118dd5cb377d10c76ece51e5fb (patch)
treed4572ba16b2ab45a7601b70cdb5811023ac3b390 /stack2.c
parentace33ff2c18c732e7ac30c49d95f7c35e06d7cee (diff)
downloaddata-structures-6fb072f62c2f50118dd5cb377d10c76ece51e5fb.tar.gz
data-structures-6fb072f62c2f50118dd5cb377d10c76ece51e5fb.tar.bz2
data-structures-6fb072f62c2f50118dd5cb377d10c76ece51e5fb.zip
Setze srcut-Marker...
Diffstat (limited to 'stack2.c')
-rw-r--r--stack2.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/stack2.c b/stack2.c
index 4c77ac2..b4b8afd 100644
--- a/stack2.c
+++ b/stack2.c
@@ -4,13 +4,16 @@
4 4
5#include "util.h" 5#include "util.h"
6 6
7/* --8<-- stack2_type */
7typedef int T; 8typedef int T;
8 9
9struct stack { 10struct stack {
10 T * array; 11 T * array;
11 size_t sz, p; 12 size_t sz, p;
12}; 13};
14/* -->8-- */
13 15
16/* --8<-- stack2_init */
14void 17void
15stack_init(struct stack *stack) 18stack_init(struct stack *stack)
16{ 19{
@@ -18,7 +21,9 @@ stack_init(struct stack *stack)
18 stack->sz = 0; 21 stack->sz = 0;
19 stack->p = 0; 22 stack->p = 0;
20} 23}
24/* -->8-- */
21 25
26/* --8<-- stack2_push */
22bool 27bool
23stack_push(struct stack *stack, T data) 28stack_push(struct stack *stack, T data)
24{ 29{
@@ -50,7 +55,9 @@ stack_push(struct stack *stack, T data)
50 stack->array[stack->p++] = data; 55 stack->array[stack->p++] = data;
51 return true; 56 return true;
52} 57}
58/* -->8-- */
53 59
60/* --8<-- stack2_pop */
54bool 61bool
55stack_pop(struct stack *stack, T *data) 62stack_pop(struct stack *stack, T *data)
56{ 63{
@@ -65,18 +72,23 @@ stack_pop(struct stack *stack, T *data)
65 else 72 else
66 return false; 73 return false;
67} 74}
75/* -->8-- */
68 76
77/* --8<-- stack2_empty */
69bool 78bool
70stack_empty(struct stack *stack) 79stack_empty(struct stack *stack)
71{ 80{
72 return stack->p == 0; 81 return stack->p == 0;
73} 82}
83/* -->8-- */
74 84
85/* --8<-- stack2_free */
75void 86void
76stack_free(struct stack *stack) 87stack_free(struct stack *stack)
77{ 88{
78 free(stack->array); 89 free(stack->array);
79} 90}
91/* -->8-- */
80 92
81int 93int
82main() 94main()