From c89eb42d58321d3e1325a684ef50a05ee3f99cfa Mon Sep 17 00:00:00 2001 From: Tristan Riehs Date: Sun, 26 Apr 2026 12:22:52 +0200 Subject: Add a "input" module --- src/input.c | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 src/input.c (limited to 'src/input.c') diff --git a/src/input.c b/src/input.c new file mode 100644 index 0000000..9ac68be --- /dev/null +++ b/src/input.c @@ -0,0 +1,33 @@ +#include +#include +#include +#include + +#include "input.h" + +int prompt_yes_no(void) +{ + puts(" [Y/n]"); + fflush(stdout); + size_t line_size = 3; + char *line = malloc(line_size); + int attempts = 0; + do { + getline(&line, &line_size, stdin); + char input = line[0]; + if (input == '\n'/*no input*/ || input == 'y' || input == 'Y') + return 1; + else if (input == 'n' || input == 'N') + return 0; + attempts++; + } + while(attempts < 3); + return 0; +} + +void remove_ending_newline(char *str) +{ + int idx = strlen(str) - 1; + assert(str[idx] == '\n'); + str[idx] = '\0'; +} -- cgit v1.2.3