_ismbc Routines

Each of the _ismbc routines tests a given multibyte character c for a particular condition.

_ismbcalnum, _ismbcalpha, _ismbcdigit _ismbcl0, _ismbcl1, _ismbcl2
_ismbcgraph, _ismbcprint, _ismbcpunct, _ismbcspace _ismbclegal, _ismbcsymbol
_ismbchira, _ismbckata _ismbclower, _ismbcupper

Remarks

The test result of each of the _ismbc routines depends on the multibyte code page in effect. Multibyte code pages have single byte alphabetic characters. By default, the multibyte code page is set to the system-default ANSI code page obtained from the operating system at program startup. You can query or change the multibyte code page in use with _getmbcp or _setmbcp, respectively.

Routine Test Condition Code Page 932 Example
_ismbcalnum Alphanumeric Returns true if and only if c is a single-byte representation of an ASCII English letter: See examples for _ismbcdigit and _ismbcalpha.
_ismbcalpha Alphabetic Returns true if and only if c is a single-byte representation of an ASCII English letter: See examples for _ismbcupper and _ismbclower; or a Katakana letter: 0xA6<=c<=0xDF.
_ismbcdigit Digit Returns true if and only if c is a single-byte representation of an ASCII digit: 0x30<=c<=0x39.
_ismbcgraph Graphic Returns true if and only if c is a single-byte representation of any ASCII or Katakana printable character except a white space ( ). See examples for _ismbcdigit, _ismbcalpha, and _ismbcpunct.
_ismbclegal Valid multibyte character Returns true if and only if the first byte of c is within ranges 0x81 – 0x9F or 0xE0 – 0xFC, while the second byte is within ranges 0x40 – 0x7E or 0x80 - FC.
_ismbclower Lowercase alphabetic Returns true if and only if c is a single-byte representation of an ASCII lowercase English letter: 0x61<=c<=0x7A.
_ismbcprint Printable Returns true if and only if c is a single-byte representation of any ASCII or Katakana printable character including a white space ( ): See examples for _ismbcspace, _ismbcdigit, _ismbcalpha, and _ismbcpunct.
_ismbcpunct Punctuation Returns true if and only if c is a single-byte representation of any ASCII or Katakana punctuation character.
_ismbcspace Whitespace Returns true if and only if c is a whitespace character: c=0x20 or 0x09<=c<=0x0D.
_ismbcsymbol Multibyte symbol Returns true if and only if 0x8141<=c<=0x81AC.
_ismbcupper Uppercase alphabetic Returns true if and only if c is a single-byte representation of an ASCII uppercase English letter: 0x41<=c<=0x5A.

Code Page 932 Specific

The following routines are specific to code page 932.

Routine Test Condition (Code Page 932 Only)
_ismbchira Double-byte Hiragana: 0x829F<=c<=0x82F1.
_ismbckata Double-byte Katakana: 0x8340<=c<=0x8396.
_ismbcl0 JIS non-Kanji: 0x8140<=c<=0x889E.
_ismbcl1 JIS level-1: 0x889F<=c<=0x9872.
_ismbcl2 JIS level-2: 0x989F<=c<=0xEA9E.

_ismbcl0, _ismbcl1, and _ismbcl2 check that the specified value c matches the test conditions described in the preceding table, but do not check that c is a valid multibyte character. If the lower byte is in the ranges 0x00 – 0x3F, 0x7F, or 0xFD – 0xFF, these functions return a nonzero value, indicating that the character satisfies the test condition. Use _ismbbtrail to test whether the multibyte character is defined.

END Code Page 932 Specific

Character Classification Routines

See Also   is, isw Function Overview, _ismbb Function Overview