Este artículo se tradujo automáticamente. Para ver el artículo en inglés, active la casilla Inglés. Además, puede mostrar el texto en inglés en una ventana emergente si mueve el puntero del mouse sobre el texto.
Traducción
Inglés

_mbclen, mblen, _mblen_l

Obtiene la longitud y determina la validez de un carácter multibyte.

Nota importante Importante

Esta API no se puede utilizar en las aplicaciones que se ejecutan en tiempo de ejecución de Windows. Para obtener más información, vea Funciones CRT no compatibles con /ZW.

size_t _mbclen(
   const unsigned char *c 
);
int mblen(
   const char *mbstr,
   size_t count 
);
int _mblen_l(
   const char *mbstr,
   size_t count,
   _locale_t locale
);

c

Carácter de Multibyte.

mbstr

Dirección de una secuencia de bytes de multibyte- carácter.

count

Número de bytes que se va a comprobar.

locale

Configuración regional a utilizar.

_mbclen devuelve 1 ó 2, según si el carácter c multibyte es 1 o 2 bytes de longitud. No hay retorno de error para _mbclen. Si mbstr no es NULL, mblen devuelve la longitud, en bytes, de caracteres multibyte. Si mbstr es NULL o elija el carácter null de caracteres anchos, mblen devuelve 0. Si el objeto que mbstr elija no forma un carácter válido multibyte dentro de los primeros caracteres de count, mblen devuelve – 1.

La función de _mbclen devuelve la longitud, en bytes, de carácter c multibyte. Si c no indica el byte inicial de un carácter multibyte determinado por una llamada implícita a _ismbblead, el resultado de _mbclen es imprevisible.

mblen devuelve la longitud en bytes de mbstr si es un carácter válido multibyte y determina la validez del multibyte- carácter asociada a la página de códigos. mblen examina count o menos bytes contenidos en mbstr, pero no más de bytes de MB_CUR_MAX.

El valor de salida se ve afectado por el valor de la categoría de LC_CTYPE de configuración regional; vea setlocale para obtener más información. Las versiones de estas funciones sin el sufijo de _l utilizan la configuración regional actual para este comportamiento configuración regional-dependiente; las versiones con el sufijo de _l son idénticas salvo que utilizan el parámetro locale pasado en su lugar. Para obtener más información, vea Configuración regional.

Asignaciones de la rutina de Genérico- texto

Rutina de Tchar.h

_UNICODE y _MBCS no definidos

_MBCS definido

_UNICODE definido

_tclen

Asigna a la macro o función inline

_mbclen

Asigna a la macro o función inline

Rutina

Encabezado necesario

_mbclen

<mbstring.h>

mblen

<stdlib.h>

_mblen_l

<stdlib.h>

Para obtener más información de compatibilidad, vea Compatibilidad en la Introducción.

// crt_mblen.c
/* illustrates the behavior of the mblen function
 */

#include <stdlib.h>
#include <stdio.h>

int main( void )
{
    int      i;
    char    *pmbc = (char *)malloc( sizeof( char ) );
    wchar_t  wc   = L'a';

    printf( "Convert wide character to multibyte character:\n" );
    wctomb_s( &i, pmbc, sizeof(char), wc );
    printf( "  Characters converted: %u\n", i );
    printf( "  Multibyte character: %x\n\n", *pmbc );

    i = mblen( pmbc, MB_CUR_MAX );
    printf( "Length in bytes of multibyte character %x: %u\n", *pmbc, i );

    pmbc = NULL;
    i = mblen( pmbc, MB_CUR_MAX );
    printf( "Length in bytes of NULL multibyte character %x: %u\n", pmbc, i );
}

Convert wide character to multibyte character:
  Characters converted: 1
  Multibyte character: 61

Length in bytes of multibyte character 61: 1
Length in bytes of NULL multibyte character 0: 0

No es aplicable Para llamar a la función estándar de C, utilice PInvoke. Para obtener más información, vea La invocación de plataforma ejemplos.

Adiciones de comunidad

AGREGAR
Mostrar: