exit_code.c 742 B

123456789101112131415161718192021222324252627282930
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <string.h>
  4. // Usage:
  5. //
  6. // /path/to/program arg1 [arg2 [...]]
  7. //
  8. // Return EXIT_SUCCESS if 'zero_exit'
  9. // string was found in <arg1>.
  10. // Return EXIT_FAILURE if 'non_zero_exit'
  11. // string was found in <arg1>.
  12. int main(int argc, const char* argv[])
  13. {
  14. const char* substring_failure = "non_zero_exit";
  15. const char* substring_success = "zero_exit";
  16. const char* str = argv[1];
  17. if (argc < 2) {
  18. return EXIT_FAILURE;
  19. }
  20. if (strcmp(str, substring_success) == 0) {
  21. return EXIT_SUCCESS;
  22. } else if (strcmp(str, substring_failure) == 0) {
  23. return EXIT_FAILURE;
  24. }
  25. fprintf(stderr, "Failed to find string '%s' in '%s'\n", substring_success,
  26. str);
  27. return EXIT_FAILURE;
  28. }