_ismbb Routine

Verifica il valore c intero specificato per una determinata condizione, usando le impostazioni locali correnti o una categoria di stato di conversione specificata LC_CTYPE .

Osservazioni:

Ogni routine nel gruppo _ismbb testa il valore integer specificato c per una determinata condizione. Il risultato del test dipende dalla tabella codici multibyte corrente. Per impostazione predefinita, la tabella codici multibyte è impostata sulla tabella codici ANSI ottenuta dal sistema operativo all'avvio del programma. È possibile usare _getmbcp per eseguire una query per la tabella codici multibyte in uso o _setmbcp per modificarla.

Il valore di output è interessato dall'impostazione dell'impostazione LC_CTYPE della categoria delle impostazioni locali. Per altre informazioni, vedere setlocale, _wsetlocale. Le versioni di queste funzioni che non hanno il _l suffisso usano le impostazioni locali correnti per questo comportamento dipendente dalle impostazioni locali. Le versioni con il _l suffisso sono identiche, ad eccezione del fatto che usano invece il parametro delle impostazioni locali passato.

Le routine nella famiglia _ismbb testano il valore integer specificato c nel modo seguente.

Ciclo Condizione di test di byte
_ismbbalnum isalnum(c) || _ismbbkalnum(c)
_ismbbalpha isalpha(c) || _ismbbkalpha(c)
_ismbbblank isblank(c)
_ismbbgraph Uguale a _ismbbprint, ma _ismbbgraph non include il carattere spazio (0x20)
_ismbbkalnum Simbolo di testo non ASCII e non di punteggiatura. Ad esempio, solo nella tabella codici 932, _ismbbkalnum esegue il test per caratteri alfanumerici Katakana
_ismbbkana Katakana (0xA1 - 0xDF). Specifica della tabella codici 932
_ismbbkprint Testo non ASCII o simbolo di punteggiatura non ASCII. Ad esempio, solo nella tabella codici 932, _ismbbkprint verifica la punteggiatura alfanumerica katakana o katakana (intervallo: 0xA1 - 0xDF)
_ismbbkpunct Punteggiatura non ASCII. Ad esempio, solo nella tabella codici 932, _ismbbkpunct verifica la punteggiatura katakana
_ismbblead Primo byte di un carattere multibyte. Ad esempio, solo nella tabella codici 932, gli intervalli validi sono 0x81 - 0x9F, 0xE0 - 0xFC
_ismbbprint isprint(c) || _ismbbkprint(c). ismbbprint include il carattere di spazio (0x20)
_ismbbpunct ispunct(c) || _ismbbkpunct(c).
_ismbbtrail Secondo byte di un carattere multibyte. Ad esempio, solo nella tabella codici 932, gli intervalli validi sono 0x40 - 0x7E, 0x80 - 0xEC

Nella tabella seguente vengono illustrati i |valori combinati che compongono le condizioni di test per queste routine. Le costanti _BLANKmanifesto , _DIGIT, _LOWER_PUNCT, e _UPPER sono definite in ctype.h.

Ciclo _BLANK _DIGIT LOWER _PUNCT UPPER Non ASCII
testo
Non ASCII
punteggiatura
_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

Le routine _ismbb vengono implementate sia come funzioni che come macro. Per altre informazioni su come scegliere una delle due implementazioni, vedere Consigli per la scelta tra funzioni e macro.

Vedi anche

Classificazione dei byte
is, isw routine
_mbbtombc, _mbbtombc_l
_mbctombb, _mbctombb_l