Annotation of embedaddon/ntp/sntp/libopts/compat/strchr.c, revision 1.1.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>