Routines _ismbc
Ogni test della routine _ismbc verifica un carattere multibyte c per un determinato stato.
_ismbcalnum, _ismbcalnum_l, _ismbcalpha, _ismbcalpha_l, _ismbcdigit, _ismbcdigit_l |
_ismbcl0, _ismbcl0_l, _ismbcl1, _ismbcl1_l, _ismbcl2, _ismbcl2_l |
Note
Il risultato del test di ciascuna routine _ismbc dipende dalla tabella codici multibyte attiva. Le tabelle codici multibyte dispongono di caratteri alfabetici a byte singolo. Per impostazione predefinita, la tabella codici multibyte viene impostata dalla tabella codici ANSI predefinita del sistema ottenuta dal sistema operativo all'avvio del programma. È possibile eseguire una query o modificare la tabella codici multibyte in uso, rispettivamente con _getmbcp o _setmbcp.
Il valore di output è interessato dall'impostazione della categoria LC_CTYPE delle impostazioni locali; Vedere setlocale per ulteriori informazioni. Le versioni di queste funzioni senza il suffisso _l utilizzano le impostazioni locali correnti per il comportamento dipendente dalle impostazioni locali; le versioni con il suffisso _l sono identiche, ad eccezione del fatto che utilizzano il parametro delle impostazioni locali che viene passato.
Routine |
Condizione di test |
Esempio di tabella di codici 932 |
---|---|---|
Alfanumerico |
Restituisce un valore diverso da zero se e solo se c è una rappresentazione a byte singolo di un carattere ASCII inglese: Vedere gli esempi per _ismbcdigit e _ismbcalpha. |
|
Carattere alfabetico |
Restituisce un valore diverso da zero se e solo se c è una rappresentazione a byte singolo di un carattere ASCII inglese: Vedere gli esempi per _ismbcupper e _ismbclower; oppure una lettera katakana : 0xA6<=c<=0xDF. |
|
Cifra |
Restituisce un valore diverso da zero se e solo se c è una rappresentazione a un byte di una cifra ASCII: 0x30<=c<=0x39. |
|
Grafico |
Restituisce un valore diverso da zero se e solo se c è una rappresentazione a un byte di qualsiasi carattere ASCII o di un carattere katakana stampabile ad eccezione uno spazio vuoto ( ). Vedere gli esempi per _ismbcdigit, _ismbcalpha, e _ismbcpunct. |
|
Carattere multibyte valido |
Restituisce un valore diverso da zero se e solo se il primo byte c è negli intervalli 0x81 – 0x9F o 0xE0 – 0xFC, mentre il secondo byte è negli intervalli 0x40 – 0x7E o 0x80 - FC. |
|
Alfabetico minuscolo |
Restituisce un valore diverso da zero se e solo se c è una rappresentazione a singolo byte di una lettera minuscola ASCII inglese: 0x61<=c<=0x7A. |
|
Stampabile |
Restituisce un valore diverso da zero se e solo se c è una rappresentazione a singolo byte di qualsiasi carattere ASCII o un carattere katakana stampabile incluso uno spazio vuoto ( ): Vedere gli esempi per _ismbcspace, _ismbcdigit, _ismbcalpha e _ismbcpunct. |
|
Punteggiatura |
Restituisce un valore diverso da zero se e solo se c è una rappresentazione a singolo byte di qualsiasi carattere ASCII o di un carattere di punteggiatura katakana. |
|
Spazio o tabulazione orizzontale |
Restituisce un valore diverso da zero se e solo se c è una rappresentazione a singolo byte di un carattere di spazio o un carattere di tabulazione orizzontale: c=0x20 o c=0x09. |
|
Whitespace |
Restituisce un valore diverso da zero se e solo se c è uno spazio: c=0x20 o 0x09=<c<=0x0D. |
|
Simbolo multibyte |
Restituisce un valore diverso da zero se e solo se 0x8141=<c<=0x81AC. |
|
Alfabetico maiuscolo |
Restituisce un valore diverso da zero se e solo se c è una rappresentazione a singolo byte di una lettera maiuscola ASCII inglese: 0x41<=c<=0x5A. |
Tabella codici specifica 932
Le seguenti routine sono specifiche della tabella codici 932.
Routine |
Condizione di test (solamente per la tabella codici 932) |
---|---|
Doppio byte Hiragana: 0x829F=<c<=0x82F1. |
|
Doppio byte katakana: 0x8340=<c<=0x8396. |
|
JIS non Kanji: 0x8140=<c<=0x889E. |
|
JIS di livello-1: 0x889F=<c<=0x9872. |
|
JIS level-2: 0x989F=<c<=0xEA9E. |
_ismbcl0, _ismbcl1 e _ismbcl2 verifica che il valore specificato c corrisponda alle condizioni di test descritte nella tabella precedente, ma non verifica quali c siano caratteri multibyte validi. Se il byte più basso è compreso tra 0x00 – 0x3F, 0x7F, o 0xFD – 0xFF, queste funzioni restituiscono un valore diverso da zero, indicando che il carattere soddisfa la condizione di test. Utilizzare _ismbbtrail, _ismbbtrail_l per verificare se il carattere multibyte è definito.
Tabella codici END specifica 932