Export (0) Print
Expand All
div
eof
Expand Minimize

_ismbb Routines

Each routine in the _ismbb family tests the given integer value c for a particular condition. The test result depends on the multibyte code page in effect. 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.

The output value is affected by the setting of the LC_CTYPE category setting of the locale; see setlocale for more information. The versions of these functions without the _l suffix use the current locale for this locale-dependent behavior; the versions with the _l suffix are identical except that they use the locale parameter passed in instead.

The routines in the _ismbb family test the given integer c as follows.

Routine

Byte test condition

_ismbbalnum

isalnum || _ismbbkalnum.

_ismbbalpha

isalpha || _ismbbkalnum.

_ismbbgraph

Same as _ismbbprint, but _ismbbgraph does not include the space character (0x20).

_ismbbkalnum

Non-ASCII text symbol other than punctuation. For example, in code page 932 only, _ismbbkalnum tests for katakana alphanumeric.

_ismbbkana

Katakana (0xA1 – 0xDF). Specific to code page 932.

_ismbbkprint

Non-ASCII text or non-ASCII punctuation symbol. For example, in code page 932 only, _ismbbkprint tests for katakana alphanumeric or katakana punctuation (range: 0xA1 – 0xDF).

_ismbbkpunct

Non-ASCII punctuation. For example, in code page 932 only, _ismbbkpunct tests for katakana punctuation.

_ismbblead

First byte of multibyte character. For example, in code page 932 only, valid ranges are 0x81 – 0x9F, 0xE0 – 0xFC.

_ismbbprint

isprint || _ismbbkprint. ismbbprint includes the space character (0x20).

_ismbbpunct

ispunct || _ismbbkpunct.

_ismbbtrail

Second byte of multibyte character. For example, in code page 932 only, valid ranges are 0x40 – 0x7E, 0x80 – 0xEC.

The following table shows the ORed values that compose the test conditions for these routines. The manifest constants _BLANK, _DIGIT, _LOWER, _PUNCT, and _UPPER are defined in Ctype.h.

Routine

_BLANK

_DIGIT

LOWER

_PUNCT

UPPER

Non-

ASCII

text

Non-

ASCII

punct

_ismbbalnum

x

x

x

x

_ismbbalpha

x

x

x

_ismbbgraph

x

x

x

x

x

x

_ismbbkalnum

x

_ismbbkprint

x

x

_ismbbkpunct

x

_ismbbprint

x

x

x

x

x

x

x

_ismbbpunct

x

x

The _ismbb routines are implemented both as functions and as macros. For more information about choosing either implementation, see Choosing Between Functions and Macros.

Show:
© 2014 Microsoft