_ismbb Routines
Each routine in the _ismbb family tests the given integer value c for a particular condition, using the current locale or a specified LC_CTYPE conversion state category.
|
Remarks
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 |
---|---|
isalnum || _ismbbkalnum. |
|
isalpha || _ismbbkalnum. |
|
Same as _ismbbprint, but _ismbbgraph does not include the space character (0x20). |
|
Non-ASCII text symbol other than punctuation. For example, in code page 932 only, _ismbbkalnum tests for katakana alphanumeric. |
|
Katakana (0xA1 – 0xDF). Specific to code page 932. |
|
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). |
|
Non-ASCII punctuation. For example, in code page 932 only, _ismbbkpunct tests for katakana punctuation. |
|
First byte of multibyte character. For example, in code page 932 only, valid ranges are 0x81 – 0x9F, 0xE0 – 0xFC. |
|
isprint || _ismbbkprint. ismbbprint includes the space character (0x20). |
|
ispunct || _ismbbkpunct. |
|
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.
.NET Framework Equivalent
Not applicable, but see System::Globalization::CultureInfo.