home *** CD-ROM | disk | FTP | other *** search
/ ARM Club 3 / TheARMClub_PDCD3.iso / hensa / unix / unixlib_1 / !UnixLib37_src_c_strchr < prev    next >
Encoding:
C/C++ Source or Header  |  1996-11-09  |  1.1 KB  |  60 lines

  1. /****************************************************************************
  2.  *
  3.  * $Source: /unixb/home/unixlib/source/unixlib37/src/c/RCS/strchr,v $
  4.  * $Date: 1996/10/30 21:58:59 $
  5.  * $Revision: 1.2 $
  6.  * $State: Rel $
  7.  * $Author: unixlib $
  8.  *
  9.  * $Log: strchr,v $
  10.  * Revision 1.2  1996/10/30 21:58:59  unixlib
  11.  * Massive changes made by Nick Burret and Peter Burwood.
  12.  *
  13.  * Revision 1.1  1996/04/19 21:26:42  simon
  14.  * Initial revision
  15.  *
  16.  ***************************************************************************/
  17.  
  18. static const char rcs_id[] = "$Id: strchr,v 1.2 1996/10/30 21:58:59 unixlib Rel $";
  19.  
  20. #include <string.h>
  21.  
  22. char *
  23. strchr (register const char *s, register int c)
  24. {
  25.   register int i;
  26.  
  27.   while ((i = *s) && (i != c))
  28.     s++;
  29.  
  30.   if (i == c)
  31.     return ((char *) s);
  32.   else
  33.     return (0);
  34. }
  35.  
  36. char *
  37. strrchr (register const char *s, register int c)
  38. {
  39.   register int i;
  40.   register const char *_s;
  41.  
  42.   _s = 0;
  43.   do
  44.     if ((i = *s) == c)
  45.       _s = s;
  46.   while (s++, i);
  47.  
  48.   return ((char *) _s);
  49. }
  50.  
  51. char *index (const char *s, int c)
  52. {
  53.   return strchr (s, c);
  54. }
  55.  
  56. char *rindex (const char *s, int c)
  57. {
  58.   return strrchr (s, c);
  59. }
  60.