## Public API Reference

- Main Page
- Modules
- Namespaces
- Classes
- Files
- Related Pages

- File List
- File Members

# csutil/csunicode.h File Reference

Unicode types and macros. More...

`#include "cssysdef.h"`

Go to the source code of this file.

## Special character codes

#define | CS_UC_BOM 0xFFFE
| Byte-order mark.
#define | CS_UC_CHAR_HIGH_SURROGATE_FIRST 0xD800
| First char in the "high surrogate" range.
#define | CS_UC_CHAR_HIGH_SURROGATE_LAST 0xDBFF
| Last char in the "high surrogate" range.
#define | CS_UC_CHAR_LOW_SURROGATE_FIRST 0xDC00
| First char in the "low surrogate" range.
#define | CS_UC_CHAR_LOW_SURROGATE_LAST 0xDFFF
| Last char in the "low surrogate" range.
#define | CS_UC_CHAR_REPLACER 0xFFFD
| Replacer char.
#define | CS_UC_INVALID 0xFFFF
| Invalid char.
#define | CS_UC_IS_HIGH_SURROGATE(C) (((C) & 0xFFFFFC00) == 0x0000DC00)
| Check whether a code is in the "high surrogate" range.
#define | CS_UC_IS_LOW_SURROGATE(C) (((C) & 0xFFFFFC00) == 0x0000D800)
| Check whether a code is in the "low surrogate" range.
#define | CS_UC_IS_NONCHARACTER(C)
| Test whether a code point is a Unicode noncharacter.
#define | CS_UC_IS_SURROGATE(C) (((C) & 0xFFFFF800) == 0x0000D800)
| Check whether a code is in the "high" or "low surrogate" range.
#define | CS_UC_LAST_CHAR 0x10FFFF
| Highest valid Unicode codepoint.

## Typedefs

typedef uint16 | utf16_char
| A single char in a UTF16 encoded string.
typedef uint32 | utf32_char
| A single char in a UTF32 encoded string.
typedef uint8 | utf8_char
| A single char in a UTF8 encoded string.

## Detailed Description

Unicode types and macros.

Definition in file csunicode.h.