windows-nt/Source/XPSP1/NT/base/crts/crtw32/string/strrchr.c

61 lines
1.4 KiB
C
Raw Permalink Normal View History

2020-09-26 03:20:57 -05:00
/***
*strrchr.c - find last occurrence of character in string
*
* Copyright (c) 1985-2001, Microsoft Corporation. All rights reserved.
*
*Purpose:
* defines strrchr() - find the last occurrence of a given character
* in a string.
*
*Revision History:
* 02-27-90 GJF Fixed calling type, #include <cruntime.h>, fixed
* copyright.
* 08-14-90 SBM Compiles cleanly with -W3, removed now redundant
* #include <stddef.h>
* 10-02-90 GJF New-style function declarator.
* 09-03-93 GJF Replaced _CALLTYPE1 with __cdecl.
*
*******************************************************************************/
#include <cruntime.h>
#include <string.h>
/***
*char *strrchr(string, ch) - find last occurrence of ch in string
*
*Purpose:
* Finds the last occurrence of ch in string. The terminating
* null character is used as part of the search.
*
*Entry:
* char *string - string to search in
* char ch - character to search for
*
*Exit:
* returns a pointer to the last occurrence of ch in the given
* string
* returns NULL if ch does not occurr in the string
*
*Exceptions:
*
*******************************************************************************/
char * __cdecl strrchr (
const char * string,
int ch
)
{
char *start = (char *)string;
while (*string++) /* find end of string */
;
/* search towards front */
while (--string != start && *string != (char)ch)
;
if (*string == (char)ch) /* char found ? */
return( (char *)string );
return(NULL);
}