Compartir a través de


_mbsbtype, _mbsbtype_l

Devuelve el tipo de byte en una cadena.

Importante

Esta API no se puede usar en aplicaciones que se ejecutan en Windows en tiempo de ejecución. Para obtener más información, vea Funciones de CRT no admitidas en aplicaciones de la Plataforma universal de Windows.

Sintaxis

int _mbsbtype(
   const unsigned char *mbstr,
   size_t count
);
int _mbsbtype_l(
   const unsigned char *mbstr,
   size_t count,
   _locale_t locale
);

Parámetros

mbstr
Dirección de una secuencia de caracteres multibyte.

count
Desplazamiento de bytes desde el encabezado de la cadena.

locale
Configuración regional que se va a usar.

Valor devuelto

_mbsbtype y _mbsbtype_l devuelve un valor entero que indica el resultado de la prueba en el byte especificado. Las constantes de manifiesto de la siguiente tabla se definen en Mbctype.h.

Valor devuelto Tipo de byte
_MBC_SINGLE (0) Carácter de un solo byte. Por ejemplo, en la página de códigos 932, _mbsbtype devuelve 0 si el byte especificado está dentro del intervalo 0x20 - 0x7E o 0xA1 - 0xDF.
_MBC_LEAD (1) Byte inicial de un carácter multibyte. Por ejemplo, en la página de códigos 932, _mbsbtype devuelve 1 si el byte especificado está dentro del intervalo 0x81 - 0x9F o 0xE0 - 0xFC.
_MBC_TRAIL (2) Byte final de un carácter multibyte. Por ejemplo, en la página de códigos 932, _mbsbtype devuelve 2 si el byte especificado está dentro del intervalo 0x40 ( 0x7E o 0x80 - 0xFC.
_MBC_ILLEGAL (-1) NULL string, carácter no válido o byte nulo encontrado antes del byte en el desplazamiento count en mbstr.

Comentarios

La función _mbsbtype determina el tipo de un byte de una cadena de caracteres multibyte. La función solo examina el byte de count de desplazamiento en mbstr, omitiendo los caracteres no válidos anteriores al byte especificado.

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. La versión de esta función sin el sufijo _l usa la configuración regional actual de este comportamiento dependiente de la configuración regional; la versión con el sufijo _l es idéntica, salvo que usa el parámetro de configuración regional que se pasa. Para obtener más información, vea Locale.

Si la cadena de entrada es NULL, se invoca el controlador de parámetros no válidos, como se describe en Validación de parámetros. Si la ejecución puede continuar, errno está establecido en EINVAL y la función devuelve _MBC_ILLEGAL.

De manera predeterminada, el estado global de esta función está limitado a la aplicación. Para cambiar este comportamiento, consulte Estado global en CRT.

Requisitos

Routine Encabezado necesario Encabezado opcional
_mbsbtype <mbstring.h> <mbctype.h>*
_mbsbtype_l <mbstring.h> <mbctype.h>*

* Para las constantes de manifiesto usadas como valores devueltos.

Para obtener más información sobre compatibilidad, consulte Compatibilidad.

Consulte también

Clasificación de bytes