Ruby
2.5.0dev(2017-10-22revision60238)
missing
strchr.c
Go to the documentation of this file.
1
/* public domain rewrite of strchr(3) and strrchr(3) */
2
3
#include "
ruby/missing.h
"
4
5
size_t
strlen
(
const
char
*);
6
7
char
*
8
strchr
(
const
char
*s,
int
c)
9
{
10
if
(c == 0)
return
(
char
*)s +
strlen
(s);
11
while
(*s) {
12
if
(*s == c)
13
return
(
char
*)s;
14
s++;
15
}
16
return
0;
17
}
18
19
char
*
20
strrchr
(
const
char
*s,
int
c)
21
{
22
const
char
*save;
23
24
if
(c == 0)
return
(
char
*)s +
strlen
(s);
25
save = 0;
26
while
(*s) {
27
if
(*s == c)
28
save = s;
29
s++;
30
}
31
return
(
char
*)save;
32
}
strlen
size_t strlen(const char *)
missing.h
strchr
char * strchr(const char *s, int c)
Definition:
strchr.c:8
strrchr
char * strrchr(const char *s, int c)
Definition:
strchr.c:20
Generated by
1.8.13