_ismbb
rutiny
Otestuje danou celočíselnou hodnotu c
pro určitou podmínku pomocí aktuálního národního prostředí nebo zadané LC_CTYPE
kategorie stavu převodu.
_ismbbalnum
, _ismbbalnum_l
_ismbbalpha
, _ismbbalpha_l
_ismbbblank
, _ismbbblank_l
_ismbbgraph
, _ismbbgraph_l
_ismbbkalnum
, _ismbbkalnum_l
_ismbbkana
, _ismbbkana_l
_ismbbkprint
, _ismbbkprint_l
_ismbbkpunct
, _ismbbkpunct_l
_ismbblead
, _ismbblead_l
_ismbbprint
, _ismbbprint_l
_ismbbpunct
, _ismbbpunct_l
_ismbbtrail
, _ismbbtrail_l
\
Poznámky
Každá rutina v rodině _ismbb
testuje danou celočíselnou hodnotu c
pro určitou podmínku. Výsledek testu závisí na vícebajtové znakové stránce, která se projeví. Ve výchozím nastavení je vícebajtová znaková stránka nastavena na znakovou stránku ANSI získanou z operačního systému při spuštění programu. Můžete použít _getmbcp
dotaz na vícebajtovou znakovou stránku, která se používá, nebo _setmbcp
ji změnit.
Výstupní hodnota je ovlivněna nastavením LC_CTYPE
nastavení kategorie národního prostředí; další informace naleznete v tématu setlocale
, _wsetlocale
. Verze těchto funkcí, které nemají příponu _l
, používají pro toto chování závislé na národním prostředí aktuální národní prostředí. Verze, které mají příponu _l
, jsou shodné s tím rozdílem, že místo toho používají předaný parametr národního prostředí.
Rutiny v rodině _ismbb
testují dané celé číslo c
následujícím způsobem.
Rutina | Podmínka testu bajtu |
---|---|
_ismbbalnum |
isalnum(c) || _ismbbkalnum(c) |
_ismbbalpha |
isalpha(c) || _ismbbkalpha(c) |
_ismbbblank |
isblank(c) |
_ismbbgraph |
Stejné jako _ismbbprint znak _ismbbgraph mezery (0x20) |
_ismbbkalnum |
Jiný než interpunkční znak bez ASCII. Například pouze na znakové stránce 932 otestuje _ismbbkalnum katakana alfanumerické znaky. |
_ismbbkana |
Katakana (0xA1 - 0xDF). Specifické pro kódovou stránku 932 |
_ismbbkprint |
Text jiné než ASCII nebo jiný než ASCII interpunkční symbol Například pouze na znakové stránce 932 testy _ismbbkprint pro katakana alfanumerické nebo katakana interpunkce (rozsah: 0xA1 – 0xDF) |
_ismbbkpunct |
Interpunkce bez ASCII Například pouze na znakové stránce 932 otestuje _ismbbkpunct interpunkci katakana. |
_ismbblead |
První bajt vícebajtového znaku. Například pouze na znakové stránce 932 jsou platné rozsahy 0x81 – 0x9F, 0xE0 – 0xFC |
_ismbbprint |
isprint(c) || _ismbbkprint(c) . ismbbprint obsahuje znak mezery (0x20) |
_ismbbpunct |
ispunct(c) || _ismbbkpunct(c) . |
_ismbbtrail |
Druhý bajt vícebajtového znaku. Například pouze na znakové stránce 932 jsou platné rozsahy 0x40 – 0x7E, 0x80 – 0xEC |
Následující tabulka ukazuje |
kombinované hodnoty, které tvoří testovací podmínky pro tyto rutiny. Konstanty manifestu _BLANK
, , _LOWER
_DIGIT
, _PUNCT
a _UPPER
jsou definovány v ctype.h
.
Rutina | _BLANK |
_DIGIT |
LOWER |
_PUNCT |
UPPER |
Jiné než ASCII text |
Jiné než ASCII interpunkce |
---|---|---|---|---|---|---|---|
_ismbbalnum |
— | linka | linka | — | linka | linka | — |
_ismbbalpha |
— | — | linka | — | linka | linka | — |
_ismbbblank |
linka | — | — | — | — | — | — |
_ismbbgraph |
— | linka | x | x | x | x | linka |
_ismbbkalnum |
— | — | — | — | — | linka | — |
_ismbbkprint |
— | — | — | — | — | linka | linka |
_ismbbkpunct |
— | — | — | — | — | — | linka |
_ismbbprint |
x | x | x | x | x | x | linka |
_ismbbpunct |
— | — | — | linka | — | — | linka |
Rutiny _ismbb
se implementují jako funkce i jako makra. Další informace o tom, jak zvolit některou z implementací, najdete v tématu Doporučení pro výběr mezi funkcemi a makry.
Viz také
Klasifikace bajtů
is
, isw
rutiny
_mbbtombc
, _mbbtombc_l
_mbctombb
, _mbctombb_l