Sdílet prostřednictvím


_strncnt, _wcsncnt, _mbsnbcnt, _mbsnbcnt_l, _mbsnccnt, _mbsnccnt_l

Vrátí počet znaků nebo bajtů v rámci zadaného počtu.

Důležitá poznámkaDůležité

_mbsnbcnt, _mbsnbcnt_l, _mbsnccnt, a _mbsnccnt_l nelze použít v aplikacích, které jsou spuštěny v systému Windows Runtime.Další informace naleznete v tématu CRT funkce nejsou podporovány s /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
);

Parametry

  • str
    Řetězec, který má být zkoumán.

  • count
    Počet znaků a bajtů, které mají být prověřeny v str.

  • locale
    Chcete-li národní prostředí pro použití.

Vrácená hodnota

_mbsnbcnta _mbsnbcnt_l vrátí počet bajtů, které jsou nalezeny v prvním count vícebajtových znaků z str._mbsnccnta _mbsnccnt_l vrácení počtu znaků, které jsou nalezeny v prvním count bajtů str.Pokud se před zkoumání narazí na znak NULL str byl dokončen, vrátí počet bajtů nebo znaků, které jsou nalezeny před znakem NULL.Pokud str se skládá z méně než count bajtů nebo znaků v řetězci vrátit počet znaků nebo bajtů.Pokud count je menší než nula, vrátí 0.V předchozích verzích byla tato funkce návratovou hodnotu typu int spíše než size_t.

_strncntVrátí počet znaků v prvním count bajtů Jednobajtové řetězce str._wcsncntVrátí počet znaků v prvním count široké znaky řetězce širokého znaku str.

Poznámky

_mbsnbcnta _mbsnbcnt_l počet bajtů, které jsou nalezeny v prvním count vícebajtových znaků z str._mbsnbcnta _mbsnbcnt_l nahradit mtob a by měla být použita místo mtob.

_mbsnccnta _mbsnccnt_l spočítat počet znaků, které jsou nalezeny v prvním count bajtů str.Pokud _mbsnccnt a _mbsnccnt_l vyskytnou hodnoty NULL v druhý bajt dvoubajtové znakové, první bajt je také považován za hodnotu NULL a není součástí hodnoty vrácené počet._mbsnccnta _mbsnccnt_l nahradit btom a by měla být použita místo btom.

Pokud str je ukazatel s hodnotou null nebo je count je 0, tyto funkce vyvolat obslužnou rutinu neplatný parametr, jak je popsáno v Ověření parametrů, errno je nastavena na EINVAL, a funkce vrátí hodnotu 0.

Výstupní hodnota je ovlivněna nastavením LC_CTYPE kategorie nastavení národního prostředí; Viz setlocale pro další informace.Verze těchto funkcí, aniž by _l příponu použít aktuální národní prostředí pro toto chování závislé na národním prostředí; verze s _l s tím rozdílem, že používají místo něho předán parametr locale shodná přípona.Další informace naleznete v tématu Národní prostředí.

Mapování rutiny obecného textu

Byla zahájena rutina

_UNICODE a _MBCS není definováno

_MBCS, definice

_UNICODE definována

_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

Požadavky

Byla zahájena rutina

Požadované záhlaví

_mbsnbcnt

<mbstring.h>

_mbsnbcnt_l

<mbstring.h>

_mbsnccnt

<mbstring.h>

_mbsnccnt_l

<mbstring.h>

_strncnt

<tchar.h>

_wcsncnt

<tchar.h>

Další informace o kompatibilitě v tématu Compatibility v úvodu.

Příklad

// 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");
}

Výsledek

The first 10 characters are single-byte.

Ekvivalent v rozhraní .NET Framework

Nelze použít Volání funkce standardním C pomocí PInvoke. Další informace naleznete v tématu Platformu vyvolání příklady.

Viz také

Referenční dokumentace

Manipulaci s řetězci (CRT)

Národní prostředí

Výklad vícebajtové znakové sekvence

_mbsnbcat _mbsnbcat_l