_ismbslead, _ismbstrail, _ismbslead_l, _ismbstrail_l

Realiza pruebas contextuales para los bytes iniciales y finales de cadenas de caracteres multibyte y determina si un determinado puntero de la subcadena apunta a un byte inicial o un byte final.

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 _ismbslead(
   const unsigned char *str,
   const unsigned char *current
);
int _ismbstrail(
   const unsigned char *str,
   const unsigned char *current
);
int _ismbslead_l(
   const unsigned char *str,
   const unsigned char *current,
   _locale_t locale
);
int _ismbstrail_l(
   const unsigned char *str,
   const unsigned char *current,
   _locale_t locale
);

Parámetros

str
Puntero al principio de la cadena o el byte inicial conocido anterior.

current
Puntero a la posición en la cadena que se va a probar.

locale
Configuración regional que se va a usar.

Valor devuelto

_ismbslead devuelve -1 si el carácter es un byte inicial y _ismbstrail devuelve -1 si el carácter es un byte final. Si las cadenas de entrada son válidas, pero no son un byte inicial o byte final, estas funciones devuelven cero. Si cualquiera de los argumentos 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, estas funciones devuelven NULL y establecen errno en EINVAL.

Comentarios

_ismbslead y _ismbstrail son más lentos que las versiones _ismbblead y _ismbbtrail porque tienen en cuenta el contexto de cadena.

Las versiones de estas funciones que tienen el sufijo _l son idénticas excepto porque, para su comportamiento, usan la configuración regional que se les pasa en lugar de la configuración regional actual. Para obtener más información, vea Locale.

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
_ismbslead <mbctype.h> o <mbstring.h> <ctype.h>,* <limits.h>, <stdlib.h>
_ismbstrail <mbctype.h> o <mbstring.h> <ctype.h>,* <limits.h>, <stdlib.h>
_ismbslead_l <mbctype.h> o <mbstring.h> <ctype.h>,* <limits.h>, <stdlib.h>
_ismbstrail_l <mbctype.h> o <mbstring.h> <ctype.h>,* <limits.h>, <stdlib.h>

* Para las constantes de manifiesto para las condiciones de prueba.

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

Consulte también

Clasificación de caracteres
_ismbc Rutinas
is, isw rutinas
_ismbb Rutinas