-// ----------------------------------------------------------------------------
-// $Id$
-// ----------------------------------------------------------------------------
-// Public Domain C Library - http://pdclib.sourceforge.net
-// This code is Public Domain. Use, modify, and redistribute at will.
-// ----------------------------------------------------------------------------
+/* ----------------------------------------------------------------------------
+ * $Id$
+ * ----------------------------------------------------------------------------
+ * Public Domain C Library - http://pdclib.sourceforge.net
+ * This code is Public Domain. Use, modify, and redistribute at will.
+ * --------------------------------------------------------------------------*/
-// ----------------------------------------------------------------------------
-// C++
+#include <__NULL.h>
-const char * strrchr( const char * s, int c ) { /* TODO */ };
-char * strrchr( char * s, int c ) { /* TODO */ };
-
-// ----------------------------------------------------------------------------
-// Standard C
-
-char * strrchr( const char * s, int c ) { /* TODO */ };
+char * strrchr( const char * src, int c )
+{
+ const char * p = src;
+ while ( *p != '\0' )
+ {
+ ++p;
+ }
+ while ( p >= src )
+ {
+ if ( *p == (char) c )
+ {
+ return (char *) p;
+ }
+ --p;
+ }
+ return NULL;
+}