Annotation of embedaddon/ntp/sntp/libopts/compat/strchr.c, revision 1.1
1.1 ! misho 1: /*
! 2: SYNOPSIS
! 3: #include <string.h>
! 4:
! 5: char *strchr(char const *s, int c);
! 6:
! 7: char *strrchr(char const *s, int c);
! 8:
! 9: DESCRIPTION
! 10: The strchr() function returns a pointer to the first occurrence of the
! 11: character c in the string s.
! 12:
! 13: The strrchr() function returns a pointer to the last occurrence of the
! 14: character c in the string s.
! 15:
! 16: Here "character" means "byte" - these functions do not work with wide
! 17: or multi-byte characters.
! 18:
! 19: RETURN VALUE
! 20: The strchr() and strrchr() functions return a pointer to the matched
! 21: character or NULL if the character is not found.
! 22:
! 23: CONFORMING TO
! 24: SVID 3, POSIX, BSD 4.3, ISO 9899
! 25: */
! 26:
! 27: char*
! 28: strchr( char const *s, int c)
! 29: {
! 30: do {
! 31: if ((unsigned)*s == (unsigned)c)
! 32: return s;
! 33:
! 34: } while (*(++s) != NUL);
! 35:
! 36: return NULL;
! 37: }
! 38:
! 39: char*
! 40: strrchr( char const *s, int c)
! 41: {
! 42: char const *e = s + strlen(s);
! 43:
! 44: for (;;) {
! 45: if (--e < s)
! 46: break;
! 47:
! 48: if ((unsigned)*e == (unsigned)c)
! 49: return e;
! 50: }
! 51: return NULL;
! 52: }
! 53:
! 54: /*
! 55: * Local Variables:
! 56: * mode: C
! 57: * c-file-style: "stroustrup"
! 58: * indent-tabs-mode: nil
! 59: * End:
! 60: * end of compat/strsignal.c */
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>