From 5e0e41652315114a8b0d883c473dbbbfc1c28342 Mon Sep 17 00:00:00 2001 From: Charles Date: Sat, 18 Jan 2020 12:11:36 +0100 Subject: filled action functions (propably bloat), checker working, stack functions not so much --- src/checker/main.c | 50 ++++++++++++++++++++++++++++++++++---------------- 1 file changed, 34 insertions(+), 16 deletions(-) (limited to 'src/checker/main.c') diff --git a/src/checker/main.c b/src/checker/main.c index fdac230..3866800 100644 --- a/src/checker/main.c +++ b/src/checker/main.c @@ -6,7 +6,7 @@ /* By: cacharle +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2020/01/18 10:16:14 by cacharle #+# #+# */ -/* Updated: 2020/01/18 10:44:28 by cacharle ### ########.fr */ +/* Updated: 2020/01/18 12:04:47 by cacharle ### ########.fr */ /* */ /* ************************************************************************** */ @@ -16,35 +16,53 @@ int main(int argc, char **argv) { t_status s; + t_stack *a; + t_stack *b; if (argc == 1) return (0); - t_stack *a = stack_new(argc - 1); - while (--argc > 1) + if ((a = stack_new(argc - 1)) == NULL) + return (1); + while (--argc >= 1) { + printf("argc %d\n", argc); errno = 0; - /* ft_strict_atoi(argv[argc]); */ stack_push(a, ft_strict_atoi(argv[argc])); if (errno != 0) { - stack_destroy(a); ft_putendl_fd("Error", STDERR_FILENO); + stack_destroy(a); return (1); } } - t_stack *b = stack_new(argc - 1); - for (int i = 0; i < a->top; i++) + if ((b = stack_new(stack_length(a))) == NULL) + { + stack_destroy(a); + return (1); + } + printf("stack a: "); + for (int i = 0; i <= a->top; i++) + printf("[%d]", a->elements[i]); + printf("\nstack b: "); + for (int i = 0; i <= b->top; i++) + printf("[%d]", b->elements[i]); + printf("\n"); + + s = check(a, b); + if (s == STATUS_SUCCESS) + ft_putendl("OK"); + else if (s == STATUS_FAILURE) + ft_putendl("KO"); + else if (s == STATUS_ERROR) + ft_putendl_fd("Error", STDERR_FILENO); + + printf("stack a: "); + for (int i = 0; i <= a->top; i++) printf("[%d]", a->elements[i]); - for (int i = 0; i < b->top; i++) + printf("\nstack b: "); + for (int i = 0; i <= b->top; i++) printf("[%d]", b->elements[i]); - printf("\n%d", stack_empty(b)); - /* s = check(a, b); */ - /* if (s == STATUS_SUCCESS) */ - /* ft_putendl("OK"); */ - /* else if (s == STATUS_FAILURE) */ - /* ft_putendl("KO"); */ - /* else if (s == STATUS_ERROR) */ - /* ft_putendl_fd("Error", STDERR_FILENO); */ + printf("\n"); stack_destroy(a); stack_destroy(b); return 0; -- cgit