case.h File Reference

Locale-independent implementation of case swapping operation. More...

`#include <string.h>`
`#include <sphinxbase/prim_type.h>`
`#include <sphinxbase/sphinxbase_export.h>`

Go to the source code of this file.

## Macros

#define | UPPER_CASE(c) ((((c) >= 'a') && ((c) <= 'z')) ? (c-32) : c)
| Return upper case form for c.
#define | LOWER_CASE(c) ((((c) >= 'A') && ((c) <= 'Z')) ? (c+32) : c)
| Return lower case form for c.

## Functions

SPHINXBASE_EXPORT void | ucase (char *str)
| Convert str to all upper case. More...
SPHINXBASE_EXPORT void | lcase (char *str)
| Convert str to all lower case. More...
SPHINXBASE_EXPORT int32 | strcmp_nocase (const char *str1, const char *str2)
| (FIXME! The implementation is incorrect!) Case insensitive string compare. More...
SPHINXBASE_EXPORT int32 | strncmp_nocase (const char *str1, const char *str2, size_t len)
| Like strcmp_nocase() but with a maximum length.

## Detailed Description

Locale-independent implementation of case swapping operation.

This function implements ASCII-only case switching and comparison related operations, which do not depend on the locale and are guaranteed to exist on all versions of Windows.

Definition in file case.h.

## Function Documentation

## lcase()

SPHINXBASE_EXPORT void lcase | ( | char * | str | ) |

Convert str to all lower case.

Parameters

  str | is a string.

## strcmp_nocase()

SPHINXBASE_EXPORT int32 strcmp_nocase | ( | const char * | str1,
|  | const char * | str2
| ) |  |

(FIXME! The implementation is incorrect!) Case insensitive string compare.

Return the usual -1, 0, +1, depending on str1 <, =, > str2 (case insensitive, of course).

Parameters

  str1 | is the first string.
  str2 | is the second string.

Definition at line 94 of file case.c.

References UPPER_CASE.

Referenced by ngram_str_to_type().

## ucase()

SPHINXBASE_EXPORT void ucase | ( | char * | str | ) |

Convert str to all upper case.

Parameters

  str | is a string.