diff options
Diffstat (limited to 'snake.c')
| -rw-r--r-- | snake.c | 14 |
1 files changed, 7 insertions, 7 deletions
@@ -44,8 +44,8 @@ int main(int argc, char **argv) { return 0; } else if(strcmp("--help", argv[i]) == 0) { - printf("usage: snake3 [--version] [--help] [--size board_size] [--speed speed] [--obstacles obstacles]\n"); - return 0; + fprintf(stderr, "usage: snake3 [--version] [--help] [--size board_size] [--speed speed] [--obstacles obstacles]\n"); + return 1; } else if(strcmp("--size", argv[i]) == 0 || strcmp("--speed", argv[i]) == 0 || strcmp("--obstacles", argv[i]) == 0) { last_flag = argv[i]; @@ -56,32 +56,32 @@ int main(int argc, char **argv) { boardSize = atoi(argv[i]); if(boardSize < 3) { fprintf(stderr, "%sboard size too small or argument invalid, please try again.%s\n", RED, COLOR_RESET); - exit(1); + return 1; } } else if(strcmp("--speed", last_flag) == 0) { speed = atoi(argv[i]); if(speed <= 0) { fprintf(stderr, "%sspeed level must be greater than zero and integer. Please try again.%s\n", RED, COLOR_RESET); - exit(1); + return 1; } else if(speed > 10) { fprintf(stderr, "%sspeed must not be greater than ten. Please try again.%s\n", RED, COLOR_RESET); - exit(1); + return 1; } } else if(strcmp("--obstacles", last_flag) == 0) { obstacles = atoi(argv[i]); if(obstacles < 0) { fprintf(stderr, "%sobstacle count cannot be negative. Please try again.%s\n", RED, COLOR_RESET); - exit(1); + return 1; } } was_flag = 0; } else { printf("usage: snake3 [--version] [--help]\n"); - exit(1); + return 1; } } /* check argument compatibility */ |
