strncmp.c
上传用户:nvosite88
上传日期:2007-01-17
资源大小:4983k
文件大小:1k
源码类别:

VxWorks

开发平台:

C/C++

  1. /* strncmp.c - string compare, string */
  2. /* Copyright 1992-1993 Wind River Systems, Inc. */
  3. /*
  4. modification history
  5. --------------------
  6. 01c,25feb93,jdi  documentation cleanup for 5.1.
  7. 01b,20sep92,smb  documentation additions
  8. 01a,08jul92,smb  written and documented.
  9. */
  10. /*
  11. DESCRIPTION
  12. INCLUDE FILES: string.h
  13. SEE ALSO: American National Standard X3.159-1989
  14. NOMANUAL
  15. */
  16. #include "vxWorks.h"
  17. #include "string.h"
  18. /*******************************************************************************
  19. *
  20. * strncmp - compare the first <n> characters of two strings (ANSI)
  21. *
  22. * This routine compares up to <n> characters of string <s1> to string <s2>
  23. * lexicographically.
  24. *
  25. * INCLUDE FILES: string.h
  26. *
  27. * RETURNS:
  28. * An integer greater than, equal to, or less than 0, according to whether
  29. * <s1> is lexicographically greater than, equal to, or less than <s2>,
  30. * respectively.
  31. */
  32. int strncmp
  33.     (
  34.     const char * s1,            /* string to compare */
  35.     const char * s2,            /* string to compare <s1> to */
  36.     size_t       n              /* max no. of characters to compare */
  37.     )
  38.     {
  39.     if (n == 0)
  40. return (0);
  41.     while (*s1++ == *s2++)
  42. {
  43. if ((s1 [-1] == EOS) || (--n == 0))
  44.     return (0);
  45.         }
  46.     return ((s1 [-1]) - (s2 [-1]));
  47.     }