_ismbb
Procedur
Sprawdza daną wartość c
całkowitą dla określonego warunku przy użyciu bieżących ustawień regionalnych lub określonej LC_CTYPE
kategorii stanu konwersji.
_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
\
Uwagi
Każda rutyna w _ismbb
rodzinie sprawdza daną wartość c
całkowitą dla określonego warunku. Wynik testu zależy od wielobajtowej strony kodowej, która działa. Domyślnie strona kodu wielobajtowego jest ustawiona na stronę kodową ANSI uzyskaną z systemu operacyjnego podczas uruchamiania programu. Możesz użyć _getmbcp
polecenia , aby wykonać zapytanie dotyczące strony kodu wielobajtowego, która jest używana, lub _setmbcp
zmienić ją.
Na wartość wyjściową ma wpływ ustawienie ustawienia LC_CTYPE
kategorii ustawień regionalnych. Aby uzyskać więcej informacji, zobacz setlocale
, _wsetlocale
. Wersje tych funkcji, które nie mają sufiksu _l
, używają bieżących ustawień regionalnych dla tego zachowania zależnego od ustawień regionalnych; wersje, które mają _l
sufiks, są identyczne, z tą różnicą, że zamiast tego używają parametru ustawień regionalnych, który jest przekazywany.
Procedury w _ismbb
rodzinie testuje daną liczbę całkowitą c
w następujący sposób.
Procedura | Warunek testu bajtowego |
---|---|
_ismbbalnum |
isalnum(c) || _ismbbkalnum(c) |
_ismbbalpha |
isalpha(c) || _ismbbkalpha(c) |
_ismbbblank |
isblank(c) |
_ismbbgraph |
Taki sam jak _ismbbprint , ale _ismbbgraph nie zawiera znaku spacji (0x20) |
_ismbbkalnum |
Symbol tekstowy inny niż znak interpunkcyjny ASCII. Na przykład na stronie kodu 932 tylko _ismbbkalnum testy dla katakana alfanumeryczne |
_ismbbkana |
Katakana (0xA1 — 0xDF). Specyficzne dla strony kodowej 932 |
_ismbbkprint |
Tekst inny niż ASCII lub symbol interpunkcyjny ASCII. Na przykład na stronie kodowej 932 tylko _ismbbkprint testy pod kątem znaków interpunkcyjnych katakana lub katakana (zakres: 0xA1 — 0xDF) |
_ismbbkpunct |
Interpunkcja nie-ASCII. Na przykład na stronie kodowej 932 tylko _ismbbkpunct testy pod kątem interpunkcji katakana |
_ismbblead |
Pierwszy bajt znaku wielobajtowego. Na przykład tylko na stronie kodu 932 prawidłowe zakresy są 0x81 — 0x9F, 0xE0 — 0xFC |
_ismbbprint |
isprint(c) || _ismbbkprint(c) . ismbbprint zawiera znak spacji (0x20) |
_ismbbpunct |
ispunct(c) || _ismbbkpunct(c) . |
_ismbbtrail |
Drugi bajt znaku wielobajtowego. Na przykład tylko na stronie kodu 932 prawidłowe zakresy są 0x40 — 0x7E, 0x80 — 0xEC |
W poniższej |
tabeli przedstawiono wartości połączone, które tworzą warunki testu dla tych procedur. Stałe manifestu _BLANK
, , _DIGIT
_LOWER
, _PUNCT
i _UPPER
są zdefiniowane w pliku ctype.h
.
Procedura | _BLANK |
_DIGIT |
LOWER |
_PUNCT |
UPPER |
Bez ASCII text |
Bez ASCII znaki interpunkcyjne |
---|---|---|---|---|---|---|---|
_ismbbalnum |
— | x | x | — | x | x | — |
_ismbbalpha |
— | — | x | — | x | x | — |
_ismbbblank |
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 |
Procedury _ismbb
są implementowane zarówno jako funkcje, jak i jako makra. Aby uzyskać więcej informacji na temat wybierania obu implementacji, zobacz Zalecenia dotyczące wybierania między funkcjami i makrami.
Zobacz też
Klasyfikacja bajtów
is
, isw
procedury
_mbbtombc
, _mbbtombc_l
_mbctombb
, _mbctombb_l