Clasificación de bytes

Cada una de estas rutinas prueba un byte especificado de un carácter multibyte para ver si cumple una condición. A menos que se especifique lo contrario, el valor de salida se ve afectado por el valor de la categoría LC_CTYPE de la configuración regional. Para obtener más información, vea setlocale. Las versiones de estas funciones sin el sufijo _l usan la configuración regional actual de su comportamiento dependiente de la configuración regional; las versiones con el sufijo _l son idénticas salvo que usan el parámetro locale pasado en su lugar.

Nota:

Por definición, los caracteres ASCII entre 0 y 127 son un subconjunto de todos los juegos de caracteres multibyte. Por ejemplo, el juego de caracteres katakana japonés contiene caracteres ASCII y no ASCII.

Las constantes predefinidas de la siguiente tabla se definen en <ctype.h>.

Rutinas de clasificación de bytes de caracteres multibyte

Routine Condición de prueba de byte
isleadbyte, _isleadbyte_l Byte inicial. El resultado de prueba depende del valor de la categoría LC_CTYPE de la configuración regional actual.
_ismbbalnum, _ismbbalnum_l isalnum || _ismbbkalnum
_ismbbalpha, _ismbbalpha_l isalpha || _ismbbkalpha
_ismbbgraph, _ismbbgraph_l Igual que _ismbbprint, pero _ismbbgraph no incluye el carácter de espacio (0x20)
_ismbbkalnum, _ismbbkalnum_l Símbolo de texto no ASCII que no sea de puntuación. Por ejemplo, en la página de códigos 932 únicamente, _ismbbkalnum prueba si hay caracteres alfanuméricos katakana.
_ismbbkana, _ismbbkana_l Katakana (0xA1 - 0xDF), página de códigos 932 únicamente.
_ismbbkprint, _ismbbkprint_l Texto no ASCII o signo de puntuación no ASCII. Por ejemplo, solo en la página de códigos 932, _ismbbkprint comprueba si hay caracteres o signos de puntuación katakana (intervalo: 0xA1 - 0xDF).
_ismbbkpunct, _ismbbkpunct_l Puntuación no ASCII. Por ejemplo, en la página de códigos 932 únicamente, _ismbbkpunct prueba si hay signos de puntuación katakana.
_ismbblead, _ismbblead_l Primer byte de un carácter multibyte. Por ejemplo, en la página de códigos 932 únicamente, los intervalos válidos son 0x81 - 0x9F y 0xE0 - 0xFC.
_ismbbprint, _ismbbprint_l isprint || _ismbbkprint. ismbbprint incluye el carácter de espacio (0x20).
_ismbbpunct, _ismbbpunct_l ispunct || _ismbbkpunct
_ismbbtrail, _ismbbtrail_l Segundo byte de un carácter multibyte. Por ejemplo, en la página de códigos 932 únicamente, los intervalos válidos son 0x40 - 0x7E y 0x80 - 0xEC.
_ismbslead, _ismbslead_l Byte inicial (en contexto de cadena).
ismbstrail, _ismbstrail_l Byte final (en contexto de cadena).
_mbbtype, _mbbtype_l Tipo de valor devuelto del byte, en función del byte anterior.
_mbsbtype, _mbsbtype_l Tipo de valor devuelto del byte de la cadena.
mbsinit Realiza el seguimiento del estado de una conversión de caracteres multibyte.

La macro MB_LEN_MAX, definida en <limits.h>, se expande a la longitud máxima en bytes que puede tener cualquier carácter multibyte. MB_CUR_MAX, definida en <stdlib.h>, se expande a la longitud máxima en bytes de cualquier carácter multibyte en la configuración regional actual.

Consulte también

Rutinas en tiempo de ejecución Universal C por categoría