#include "cli.h" #include #include #include #include cli_arguments cli_parse_arguments(const char *const argv[], const int argc) { errno = 0; cli_arguments args = { .is_debug_mode = false, }; int opt = -1; opterr = 0; // Suppress getopt's built-in invalid opt message while ((opt = getopt(argc, (char *const *)argv, "dh")) != -1) { switch (opt) { case 'd': args.is_debug_mode = true; break; case '?': (void)fprintf(stderr, "error: unknown option `-%c'\n", optopt); // fall through case 'h': // fall through default: (void)fprintf(stderr, "usage: %s [-d]\n", BINARY); errno = 1; } } return args; }