From e66d9cd721427e2afdde2512cae87ab7b8dcb517 Mon Sep 17 00:00:00 2001 From: Boris Stefanovic <owldev@bluewin.ch> Date: Mon, 29 Nov 2021 11:09:47 +0100 Subject: [PATCH] ADD: stack_print: add special case for empty stack --- stack.c | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/stack.c b/stack.c index 4699c29..df4e961 100644 --- a/stack.c +++ b/stack.c @@ -18,9 +18,13 @@ void stack_peek(stack s, int *value){ } void stack_print(const stack s) { - printf(" TOP\n--------------------\n"); - for (int* spot = s.data + s.top; spot >= s.data; --spot) { - printf("%8d | %12d\n", spot - s.data, *spot); + if (s.top >= 0) { + printf(" TOP\n--------------------\n"); + for (int* spot = s.data + s.top; spot >= s.data; --spot) { + printf("%8d | %12d\n", spot - s.data, *spot); + } + printf("--------------------\n BOTTOM\n"); + } else { + printf("STACK EMPTY\n"); } - printf("--------------------\n BOTTOM\n"); } -- GitLab