123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566 |
- /*
- SYNOPSIS
- #include <string.h>
- char *strchr(char const *s, int c);
- char *strrchr(char const *s, int c);
- DESCRIPTION
- The strchr() function returns a pointer to the first occurrence of the
- character c in the string s.
- The strrchr() function returns a pointer to the last occurrence of the
- character c in the string s.
- Here "character" means "byte" - these functions do not work with wide
- or multi-byte characters.
- RETURN VALUE
- The strchr() and strrchr() functions return a pointer to the matched
- character or NULL if the character is not found.
- CONFORMING TO
- SVID 3, POSIX, BSD 4.3, ISO 9899
- */
- static char *
- strchr(char const *s, int c);
- static char *
- strrchr(char const *s, int c);
- static char *
- strchr(char const *s, int c)
- {
- do {
- if ((unsigned char)*s == (unsigned char)c)
- return s;
- } while (*(++s) != NUL);
- return NULL;
- }
- static char *
- strrchr(char const *s, int c)
- {
- char const *e = s + strlen(s);
- for (;;) {
- if (--e < s)
- break;
- if ((unsigned char)*e == (unsigned char)c)
- return e;
- }
- return NULL;
- }
- /*
- * Local Variables:
- * mode: C
- * c-file-style: "stroustrup"
- * indent-tabs-mode: nil
- * End:
- * end of compat/strsignal.c */
|