Udostępnij za pośrednictwem


strpbrk, wcspbrk, _mbspbrk, _mbspbrk_l

Zeskanuj ciągi znaków w określonych zestawów znaków.

Ważna uwagaWażne

_mbspbrki _mbspbrk_l nie można używać w aplikacji, których wykonywanie w czasie wykonywania systemu Windows.Aby uzyskać więcej informacji, zobacz CRT funkcje nie obsługiwane przez /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
    Ciąg zakończony znakiem null, wyszukiwany.

  • strCharSet
    Zestaw znaków zakończony znakiem null.

  • locale
    Ustawienia regionalne używane.

Wartość zwracana

Zwraca wskaźnik do pierwszego wystąpienia każdego znaku z strCharSet w str, lub NULL wskaźnik, jeśli ciąg dwóch argumentów nie mam znaków wspólnych.

Uwagi

strpbrk Funkcja zwraca wskaźnik do pierwszego wystąpienia znaku w str który należy do zestawu znaków w strCharSet.Wyszukiwanie nie ma końcowego znaku null.

wcspbrki _mbspbrk szerokich znaków i znaków wielobajtowych wersje strpbrk.Argumenty i wartości zwracanej przez wcspbrk są ciągami szerokich znaków; tych z _mbspbrk są ciągami znaków wielobajtowych.

_mbspbrksprawdza poprawność jego parametry.Jeśli str lub strCharSet jest NULL, program obsługi nieprawidłowy parametr jest wywoływana, zgodnie z opisem w Sprawdzanie poprawności parametru.Jeśli wykonanie może kontynuować, _mbspbrk zwraca NULL i ustawia errno do EINVAL.strpbrki wcspbrk nie są zgodne z nimi parametrów.Zmienia tych trzech funkcji zachowanie takich samych nazwach.

_mbspbrkjest podobny do _mbscspn z tym, że _mbspbrk zwraca wskaźnik, a nie wartości typu size_t.

W C, funkcje te są sporządzane const wskaźnik do pierwszego argumentu.W języku C++ dostępne są dwa przeciążeń.Przeciążenie biorąc wskaźnik do const zwraca wskaźnik do const; wersja, które przekieruje wskaźnik do nie-const zwraca wskaźnik do non-const._CONST_CORRECT_OVERLOADS makro jest zdefiniowana, jeśli oba const i non-const wersje te funkcje są dostępne.Jeśli wymagasz non-const symbol _CONST_RETURN zdefiniować zachowanie dla obu overloads C++.

Wartość produkcji jest zależny od ustawienia z LC_CTYPE kategorii ustawienie regionalne tzn. Aby uzyskać więcej informacji, zobacz setlocale.Wersje te funkcje, bez _l sufiks Użyj bieżących ustawień regionalnych tego zachowania zależne od ustawień lokalnych; wersja z _l sufiks jest identyczny z tym, że parametr ustawień regionalnych, przekazany w zamian.Aby uzyskać więcej informacji, zobacz Ustawienia regionalne.

Tekst rodzajowy rutynowych mapowania

TCHAR.Rozpoczęto wykonywanie procedury h

_UNICODE & _MBCS nie zdefiniowany

_MBCS, definicja

_UNICODE, definicja

_tcspbrk

strpbrk

_mbspbrk

wcspbrk

n/d

n/d

_mbspbrk_l

n/d

Wymagania

Rozpoczęto wykonywanie procedury

Wymaganego nagłówka

strpbrk

<string.h>

wcspbrk

<string.h> lub <wchar.h>

_mbspbrk, _mbspbrk_l

<mbstring.h>

Aby uzyskać więcej informacji na temat zgodności, zobacz zgodności.

Przykład

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

Odpowiednik w programie .NET Framework

System::String::IndexOfAny

Zobacz też

Informacje

Manipulowanie ciągami (CRT)

Ustawienia regionalne

Interpretacja sekwencje znaków wielobajtowych

strcspn, wcscspn, _mbscspn, _mbscspn_l

strchr, wcschr, _mbschr, _mbschr_l

strrchr, wcsrchr, _mbsrchr, _mbsrchr_l