Sdílet prostřednictvím


strpbrk, wcspbrk, _mbspbrk, _mbspbrk_l

Prohledává řetězce na znaky v zadaných znakových sadách.

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

_mbspbrk a _mbspbrk_l nelze použít v aplikacích, které jsou spouštěny v modulu Windows Runtime.Další informace naleznete v tématu CRT funkce nejsou podporovány s /ZW.

char *strpbrk(
   const char *str,
   const char *strCharSet 
); // C only
char *strpbrk(
   char *str,
   const char *strCharSet 
); // C++ only
const char *strpbrk(
   const char *str,
   const char *strCharSet 
); // C++ only
wchar_t *wcspbrk(
   const wchar_t *str,
   const wchar_t *strCharSet 
); // C only
wchar_t *wcspbrk(
   wchar_t *str,
   const wchar_t *strCharSet 
); // C++ only
const wchar_t *wcspbrk(
   const wchar_t *str,
   const wchar_t *strCharSet 
); // C++ only
unsigned char *_mbspbrk(
   const unsigned char *str,
   const unsigned char *strCharSet 
); // C only
unsigned char *_mbspbrk(
   unsigned char *str,
   const unsigned char *strCharSet 
); // C++ only
const unsigned char *_mbspbrk(
   const unsigned char *str,
   const unsigned char *strCharSet 
); // C++ only
unsigned char *_mbspbrk_l(
   const unsigned char *str,
   const unsigned char *strCharSet,
   _locale_t locale
); // C only
unsigned char *_mbspbrk_l(
   unsigned char *str,
   const unsigned char *strCharSet,
   _locale_t locale
); // C++ only
const unsigned char *_mbspbrk_l(
   const unsigned char *str,
   const unsigned char* strCharSet,
   _locale_t locale
); // C++ only

Parametry

  • str
    Hledaný řetězec zakončený hodnotou null.

  • strCharSet
    Sada znaků zakončených znakem null.

  • locale
    Použité národní prostředí.

Vrácená hodnota

Vrací ukazatel na první výskyt libovolného znaku z strCharSet v str nebo ukazatel NULL, pokud tyto dva řetězcové argumenty nemají žádné znaky společné.

Poznámky

Funkce strpbrk vrátí ukazatel na první výskyt znaku v str, který patří do sady znaků v strCharSet.Hledání nezahrnuje ukončovací znak null.

wcspbrk a _mbspbrk jsou širokoznaká verze a vícebajtová znaková verze strpbrk.Argumenty a vrácené hodnoty wcspbrk jsou širokoznaké řetězce. Hodnoty _mbspbrk jsou vícebajtové znakové řetězce.

_mbspbrk ověří jeho parametry.Pokud str nebo strCharSet je NULL, je vyvolána obslužná rutina neplatné parametru, jak je popsáno v Ověření parametru.Pokud provádění může pokračovat, _mbspbrk vrátí NULL a nastaví errno na EINVAL.strpbrk a wcspbrk neověří jejich parametry.Tyto tři funkce se chovají identicky jinak.

_mbspbrk se podobá _mbscspn s tím rozdílem, že _mbspbrk vrací ukazatel, nikoli hodnotu typu size_t.

V C tyto funkce použijí ukazatel const pro první argument.V jazyce C++ jsou k dispozici dvě přetížení.Přetížení přijímající ukazatel na const vrací ukazatel na const; verze, která přijímá ukazatel na ne const, vrací ukazatel na ne const.Makro _CONST_CORRECT_OVERLOADS je definováno, pokud jsou verze const i ne const těchto funkcí k dispozici.Vyžadujete-li non-const chování pro obě přetížení C++, definujte symbol _CONST_RETURN.

Výstupní hodnota je ovlivněna nastavením kategorie LC_CTYPE národního prostředí; viz setlocale pro další informace.Verze těchto funkcí bez přípony _l používají aktuální národní prostředí pro toto chování závislé na národním prostředí. Verze s příponou _l jsou stejné s tím rozdílem, že používají předaný parametr národního prostředí.Další informace naleznete v tématu Národní prostředí.

Rutinní mapování obecného textu

Rutina TCHAR.H

_UNICODE & _MBCS není definováno

_MBCS definováno

_UNICODE definováno

_tcspbrk

strpbrk

_mbspbrk

wcspbrk

není k dispozici

není k dispozici

_mbspbrk_l

není k dispozici

Požadavky

Rutina

Požadované záhlaví

strpbrk

<string.h>

wcspbrk

<string.h> nebo <wchar.h>

_mbspbrk, _mbspbrk_l

<mbstring.h>

Další informace o kompatibilitě naleznete v tématu Kompatibilita.

Příklad

// crt_strpbrk.c

#include <string.h>
#include <stdio.h>

int main( void )
{
   char string[100] = "The 3 men and 2 boys ate 5 pigs\n";
   char *result = NULL;

   // Return pointer to first digit in "string".
   printf( "1: %s\n", string );
   result = strpbrk( string, "0123456789" );
   printf( "2: %s\n", result++ );
   result = strpbrk( result, "0123456789" );
   printf( "3: %s\n", result++ );
   result = strpbrk( result, "0123456789" );
   printf( "4: %s\n", result );
}
  

Ekvivalent v rozhraní .NET Framework

System::String::IndexOfAny

Viz také

Referenční dokumentace

Zacházení s řetězci (CRT)

Národní prostředí

Výklad sekvencí vícebajtových znaků

strcspn, wcscspn, _mbscspn, _mbscspn_l

strchr, wcschr, _mbschr, _mbschr_l

strrchr, wcsrchr, _mbsrchr, _mbsrchr_l