From 3126857efc62fa916f34db188ea6c8454efe17fa Mon Sep 17 00:00:00 2001 From: "orestis.malaspin" <orestis.malaspinas@hesge.ch> Date: Mon, 6 Dec 2021 18:31:12 +0100 Subject: [PATCH] Resolve "Add is empty function" --- stack.c | 13 +++++++++++++ stack.h | 2 +- 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/stack.c b/stack.c index fc4205b..209089f 100644 --- a/stack.c +++ b/stack.c @@ -1,4 +1,7 @@ #include <stdlib.h> +#include <stdbool.h> +#include <stdio.h> + #include "stack.h" @@ -75,3 +78,13 @@ int get_length(stack s) { return s.top + 1; } +/** + * @brief Check if a stack is empty + * + * @param s + * @return bool - true if stack is empty, false otherwise + */ +bool stack_is_empty(stack s) +{ + return s.top == -1; +} \ No newline at end of file diff --git a/stack.h b/stack.h index 010bfdc..5aa60b4 100644 --- a/stack.h +++ b/stack.h @@ -1,7 +1,6 @@ #ifndef _STACK_H_ #define _STACK_H_ - typedef struct _stack { int *data; int capacity; @@ -17,6 +16,7 @@ void stack_pop(stack *s, int *value); void stack_peek(stack s, int *value); void stack_clone(stack s, stack *clone); int get_length(stack s); +bool stack_is_empty(stack s); void stack_print(const stack s); -- GitLab