newlib-cygwin/newlib/libc/string/strrchr.c

54 lines
832 B
C
Raw Normal View History

2000-02-18 03:39:52 +08:00
/*
FUNCTION
<<strrchr>>---reverse search for character in string
INDEX
strrchr
SYNOPSIS
2000-02-18 03:39:52 +08:00
#include <string.h>
char * strrchr(const char *<[string]>, int <[c]>);
DESCRIPTION
This function finds the last occurence of <[c]> (converted to
a char) in the string pointed to by <[string]> (including the
terminating null character).
RETURNS
Returns a pointer to the located character, or a null pointer
if <[c]> does not occur in <[string]>.
PORTABILITY
<<strrchr>> is ANSI C.
<<strrchr>> requires no supporting OS subroutines.
QUICKREF
strrchr ansi pure
*/
#include <string.h>
char *
_DEFUN (strrchr, (s, i),
_CONST char *s,
2000-02-18 03:39:52 +08:00
int i)
{
_CONST char *last = NULL;
if (i)
2000-02-18 03:39:52 +08:00
{
while ((s=strchr(s, i)))
2000-02-18 03:39:52 +08:00
{
last = s;
s++;
2000-02-18 03:39:52 +08:00
}
}
else
2000-02-18 03:39:52 +08:00
{
last = strchr(s, i);
2000-02-18 03:39:52 +08:00
}
2000-02-18 03:39:52 +08:00
return (char *) last;
}