OpenCores
URL https://opencores.org/ocsvn/openrisc/openrisc/trunk

Subversion Repositories openrisc

[/] [openrisc/] [tags/] [gnu-src/] [newlib-1.18.0/] [newlib-1.18.0-or32-1.0rc2/] [newlib/] [libc/] [string/] [strcasecmp.c] - Blame information for rev 802

Go to most recent revision | Details | Compare with Previous | View Log

Line No. Rev Author Line
1 207 jeremybenn
/*
2
FUNCTION
3
        <<strcasecmp>>---case-insensitive character string compare
4
 
5
INDEX
6
        strcasecmp
7
 
8
ANSI_SYNOPSIS
9
        #include <string.h>
10
        int strcasecmp(const char *<[a]>, const char *<[b]>);
11
 
12
TRAD_SYNOPSIS
13
        #include <string.h>
14
        int strcasecmp(<[a]>, <[b]>)
15
        char *<[a]>;
16
        char *<[b]>;
17
 
18
DESCRIPTION
19
        <<strcasecmp>> compares the string at <[a]> to
20
        the string at <[b]> in a case-insensitive manner.
21
 
22
RETURNS
23
 
24
        If <<*<[a]>>> sorts lexicographically after <<*<[b]>>> (after
25
        both are converted to lowercase), <<strcasecmp>> returns a
26
        number greater than zero.  If the two strings match,
27
        <<strcasecmp>> returns zero.  If <<*<[a]>>> sorts
28
        lexicographically before <<*<[b]>>>, <<strcasecmp>> returns a
29
        number less than zero.
30
 
31
PORTABILITY
32
<<strcasecmp>> is in the Berkeley Software Distribution.
33
 
34
<<strcasecmp>> requires no supporting OS subroutines. It uses
35
tolower() from elsewhere in this library.
36
 
37
QUICKREF
38
        strcasecmp
39
*/
40
 
41
#include <string.h>
42
#include <ctype.h>
43
 
44
int
45
_DEFUN (strcasecmp, (s1, s2),
46
        _CONST char *s1 _AND
47
        _CONST char *s2)
48
{
49
  _CONST unsigned char *ucs1 = (_CONST unsigned char *) s1;
50
  _CONST unsigned char *ucs2 = (_CONST unsigned char *) s2;
51
  int d = 0;
52
  for ( ; ; )
53
    {
54
      _CONST int c1 = tolower(*ucs1++);
55
      _CONST int c2 = tolower(*ucs2++);
56
      if (((d = c1 - c2) != 0) || (c2 == '\0'))
57
        break;
58
    }
59
  return d;
60
}

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.