strpbrk, wcspbrk, _mbspbrk, _mbspbrk_l

Überprüfungszeichenfolgen für Zeichen in den angegebenen Zeichensätzen.

Wichtiger HinweisWichtig

_mbspbrk und _mbspbrk_l können in Anwendungen nicht verwendet werden, die in der Windows Runtime ausführen.Weitere Informationen finden Sie unter CRT-Funktionen unterstützt nicht mit /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

Parameter

  • str
    Auf NULL endende, Suchzeichenfolge.

  • strCharSet
    Auf NULL endende Zeichensatz.

  • locale
    Zu verwendende Gebietsschema.

Rückgabewert

Gibt einen Zeiger auf das erste Vorkommen eines beliebigen Zeichens von strCharSet in str oder einen NULL Zeiger zurück, wenn die beiden Zeichenfolgenargumente keine Zeichen gemeinsam haben.

Hinweise

Die strpbrk-Funktion gibt einen Zeiger auf das erste Vorkommen eines Zeichens in str zurück, das dem Satz von Zeichen in strCharSet gehört.Die Suche umfasst das nicht NULL.

wcspbrk und _mbspbrk sind Breitzeich und Mehrbytezeichen-Versionen von strpbrk.Die Argumente und der Rückgabewert von wcspbrk sind Breitzeichen-Zeichenfolgen; die von _mbspbrk sind Mehrbyte-Zeichenfolgen.

_mbspbrk überprüft seine Parameter.Wenn str oder strCharSetNULL ist, wird der ungültige Parameterhandler aufgerufen, wie in Parametervalidierung beschrieben.Wenn die Ausführung zulässig ist, um fortzufahren, gibt _mbspbrkNULL zurück und legt errno zu EINVAL fest.strpbrk und wcspbrk überprüfen nicht ihre Parameter.Diese drei Funktionen verhalten sich andernfalls identisch.

_mbspbrk ist zu _mbscspn außer dass zu _mbspbrk gibt ein Zeiger keinen Wert des Typs size_t ähnlich.

In C nehmen diese Funktionen einen const Zeiger für das erste Argument.In C++ sind zwei Überladungen verfügbar.Die Überladung, die einen Zeiger const übernimmt, gibt einen Zeiger auf const zurück; die Version, die Nicht-const einen Zeiger übernimmt, gibt einen Zeiger auf Nicht-const zurück.Das Makro- CONST CORRECT OVERLOADS wird definiert, wenn const und Nicht-const-Versionen dieser Funktionen verfügbar sind.Wenn Sie das Nicht-const Verhalten für beide C++-Überladungen erforderlich ist, definieren Sie das Symbol _CONST_RETURN.

Der Ausgabewert wird durch die Einstellung der LC_CTYPE Kategorieneinstellung des Gebietsschemas betroffen; weitere Informationen finden Sie unter setlocale.Die Versionen dieser Funktionen ohne das _l Suffix verwenden das aktuelle Gebietsschema für dieses Verhalten abhängig; die Version mit dem _l Suffix ist identisch, allerdings wird der Gebietsschemaparameter, der in stattdessen übergeben wird.Weitere Informationen finden Sie unter Gebietsschema.

Zuordnung generische Textroutinen

TCHAR.H-Routine

_UNICODE & _MBCS nicht definiert.

_MBCS definiert

_UNICODE definiert

_tcspbrk

strpbrk

_mbspbrk

wcspbrk

nicht verfügbar

nicht verfügbar

_mbspbrk_l

nicht verfügbar

Anforderungen

Routine

Erforderlicher Header

strpbrk

<string.h>

wcspbrk

<string.h> oder <wchar.h>

_mbspbrk, _mbspbrk_l

<mbstring.h>

Weitere Informationen zur Kompatibilität, finden Sie unter Kompatibilität.

Beispiel

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

.NET Framework-Entsprechung

System::String::IndexOfAny

Siehe auch

Referenz

Zeichenfolgenbearbeitung (CRT)

Gebietsschema

Interpretation von Mehrbytezeichen-Sequenzen

strcspn, wcscspn, _mbscspn, _mbscspn_l

strchr, wcschr, _mbschr, _mbschr_l

strrchr, wcsrchr, _mbsrchr, _mbsrchr_l