index.c 650 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. /* TODO: should this go into strings.c ? */
  2. #include <grass/gis.h>
  3. /*!
  4. * \brief delimiter
  5. *
  6. * position of delimiter
  7. *
  8. * \param str
  9. * \param delim
  10. * \return char *
  11. */
  12. char *G_index(const char *str, int delim)
  13. {
  14. while (*str && *str != delim)
  15. str++;
  16. if (delim == 0)
  17. return (char *)str;
  18. return *str ? (char *)str : NULL;
  19. }
  20. /*!
  21. * \brief ???
  22. *
  23. * ???
  24. *
  25. * \param str
  26. * \param delim
  27. * \return char *
  28. */
  29. char *G_rindex(const char *str, int delim)
  30. {
  31. const char *p;
  32. p = NULL;
  33. while (*str) {
  34. if (*str == delim)
  35. p = str;
  36. str++;
  37. }
  38. if (delim == 0)
  39. return (char *)str;
  40. return (char *)p;
  41. }