Compartir a través de


_strncnt, _wcsncnt, _mbsnbcnt, _mbsnbcnt_l, _mbsnccnt, _mbsnccnt_l

Devuelve el número de caracteres o bytes dentro de un número proporcionado.

Nota importanteImportante

_mbsnbcnt, _mbsnbcnt_l, _mbsnccnt, y _mbsnccnt_l no se pueden 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 _strncnt(
   const char *str,
   size_t count
);
size_t _wcsncnt(
   const wchar_t *str,
   size_t count
);
size_t _mbsnbcnt(
   const unsigned char *str,
   size_t count 
);
size_t _mbsnbcnt_l(
   const unsigned char *str,
   size_t count,
   _locale_t locale
);
size_t _mbsnccnt(
   const unsigned char *str,
   size_t count
);
size_t _mbsnccnt_l(
   const unsigned char *str,
   size_t count,
   _locale_t locale
);

Parámetros

  • str
    Cadena que se examinará.

  • count
    Número de caracteres o bytes que se examinarán en str.

  • locale
    Configuración regional a utilizar.

Valor devuelto

_mbsnbcnt y _mbsnbcnt_l devuelven el número de bytes que se encuentran en primer count de caracteres multibyte de str._mbsnccnt y _mbsnccnt_l devuelven el número de caracteres encontrado en primer count de bytes de str.Si se encuentra un carácter NULL antes de que el examen de str completa, devuelven el número de bytes o caracteres encontrados antes de caracteres NULL.Si str consta de menos de caracteres o bytes de count, devuelven el número de caracteres o bytes en la cadena.Si count es menor que cero, devuelven 0.En versiones anteriores, estas funciones tienen un valor devuelto de int escrito en lugar de size_t.

_strncnt devuelve el número de caracteres de los primeros bytes de count de la cadena str de solo- byte._wcsncnt devuelve el número de caracteres de los primeros caracteres anchos de count de cadena de caracteres str.

Comentarios

_mbsnbcnt y _mbsnbcnt_l cuentan el número de bytes que se encuentran en primer count de caracteres multibyte de str._mbsnbcnt y _mbsnbcnt_l reemplazan mtob y se deben usar en lugar de mtob.

_mbsnccnt y _mbsnccnt_l cuentan el número de caracteres encontrado en primer count de bytes de str.Si _mbsnccnt y _mbsnccnt_l encuentran un NULL en el segundo byte de un carácter de doble byte, el primer byte también se considera NULL y no se incluyen en el valor de recuento devuelto._mbsnccnt y _mbsnccnt_l reemplazan btom y se deben usar en lugar de btom.

Si str es un puntero nulo o es count es 0, estas funciones se invoca el controlador no válido del parámetro tal como se describe en Validación de parámetros, errno se establece en EINVAL, y la función devuelve 0.

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

_UNICODE y _MBCS no definidos

_MBCS definido

_UNICODE definido

_tcsnbcnt

_strncnt

_mbsnbcnt

_wcsncnt

_tcsnccnt

_strncnt

_mbsnbcnt

n/a

_wcsncnt

n/a

n/a

_mbsnbcnt

_wcsncnt

n/a

n/a

_mbsnccnt

n/a

n/a

_mbsnbcnt_l

_mbsnccnt_l

Requisitos

Rutina

Encabezado necesario

_mbsnbcnt

<mbstring.h>

_mbsnbcnt_l

<mbstring.h>

_mbsnccnt

<mbstring.h>

_mbsnccnt_l

<mbstring.h>

_strncnt

<tchar.h>

_wcsncnt

<tchar.h>

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

Ejemplo

// crt_mbsnbcnt.c

#include  <mbstring.h>
#include  <stdio.h>

int main( void )
{
   unsigned char str[] = "This is a multibyte-character string.";
   unsigned int char_count, byte_count;
   char_count = _mbsnccnt( str, 10 );
   byte_count = _mbsnbcnt( str, 10 );
   if ( byte_count - char_count )
      printf( "The first 10 characters contain %d multibyte characters\n", char_count );
   else
      printf( "The first 10 characters are single-byte.\n");
}

Output

The first 10 characters are single-byte.

Equivalente en .NET Framework

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.

Vea también

Referencia

Manipulación de cadenas (CRT)

Configuración regional

Interpretación de secuencias de Multibyte- Carácter

_mbsnbcat, _mbsnbcat_l