diff options
-rw-r--r-- | src/ja.c | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/src/ja.c b/src/ja.c new file mode 100644 index 0000000..6b37b02 --- /dev/null +++ b/src/ja.c @@ -0,0 +1,54 @@ +#include <stdio.h> +#include <stdlib.h> +#include <string.h> +#include <unistd.h> + +#include "util/map.h" +#include "util/versie.h" + +static void usage(FILE *f) { + fprintf(f, + "Gebruik: ja [-hV] [touwtje]\n" + "\n" + "Exporteer een touwtje oneindig lang.\n" + "\n" + " -h Toon deze hulptekst\n" + " -V Toon versienummer\n"); +} + +// Returns pointer to argument array containing the file names +static char** parse_options(int argc, char **argv) { + int opt; + while ((opt = getopt(argc, argv, "hV")) != -1) { + switch (opt) { + case 'h': + usage(stdout); + exit(0); + + case 'V': + drukkedoos_print_versie(stdout, "ja"); + exit(0); + + case '?': + usage(stderr); + exit(1); + } + } + + return argv + optind; +} + +int entry_ja(int argc, char **argv) { + char **args = parse_options(argc, argv); + + const char *touwtje = "ja"; + if (*args != NULL) { + touwtje = *args; + } + + for (;;) { + puts(touwtje); + } + + return 0; +} |