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

  1. /****************************************************************************
  2.  *
  3.  * $Source: /unixb/home/unixlib/source/unixlib37/src/c/RCS/strcmp,v $
  4.  * $Date: 1996/04/19 21:26:42 $
  5.  * $Revision: 1.1 $
  6.  * $State: Rel $
  7.  * $Author: simon $
  8.  *
  9.  * $Log: strcmp,v $
  10.  * Revision 1.1  1996/04/19 21:26:42  simon
  11.  * Initial revision
  12.  *
  13.  ***************************************************************************/
  14.  
  15. static const char rcs_id[] = "$Id: strcmp,v 1.1 1996/04/19 21:26:42 simon Rel $";
  16.  
  17. #include <string.h>
  18.  
  19. int
  20. strcmp (register const char *s1, register const char *s2)
  21.  
  22. {
  23.   register int i;
  24.  
  25.   while ((i = *s1) && i == *s2)
  26.     s1++, s2++;
  27.  
  28.   return (*(unsigned char *) s1 - *(unsigned char *) s2);
  29. }
  30.  
  31. int
  32. strncmp (register const char *s1, register const char *s2, register size_t n)
  33.  
  34. {
  35.   register int i;
  36.  
  37.   if (!n)
  38.     return 0;
  39.  
  40.   while ((i = *s1) && i == *s2 && --n)
  41.     s1++, s2++;
  42.  
  43.   return (*(unsigned char *) s1 - *(unsigned char *) s2);
  44. }
  45.