Char2uni- handling on unicode, utf-8 and localized 8 bit encodings libafterimage/char_size
- Convenient macro so we can transparently determine the number of bytes that character spans. It assumes UTF-8 encoding when I18N is enabled.
/* size of the UTF-8 encoded character is based on value of * the first byte : */ #define UTF8_CHAR_SIZE(c) ((((c)&0xC0)==0xC0)? \
(((c)&0x20)? \ (((c)&0x10)? \ (((c)&0x08)? \ (((c)&0x04)?6:5):4):3):2):1)
#ifdef WIN32 #define UNICODE_CHAR_SIZE(c) sizeof(UNICODE_CHAR) #endif #define CHAR_SIZE(c) 1