strpbrk, wcspbrk, _mbspbrk, _mbspbrk_l
Parcourt des chaînes en cherchant des caractères des jeux de caractères spécifiés.
Important
_mbspbrk et _mbspbrk_l ne peuvent pas être utilisée dans les applications qui s'exécutent dans le Windows Runtime.Pour plus d'informations, consultez Fonctions CRT non prises en charge avec /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
Paramètres
str
Chaîne terminée par Null ayant déjà été parcourue.strCharSet
Jeu de caractères se terminant par null.locale
Paramètres régionaux à utiliser.
Valeur de retour
Retourne un pointeur vers la première occurrence d'un caractère de strCharSet dans str, ou un pointeur NULL si les deux arguments de chaîne n'ont aucun caractère en commun.
Notes
La fonction strpbrk retourne un pointeur vers la première occurrence d'un caractère dans un str qui appartient au jeu de caractères dans strCharSet. La recherche ne contient pas le caractères de fin null.
wcspbrk et _mbspbrk sont des versions à caractères élargis et à caractères multi-octets de strpbrk. Les arguments et la valeur de retour de wcspbrk sont des chaînes à caractères larges ; ceux de _mbspbrk sont des chaînes de caractères multioctets.
_mbspbrk valide ses paramètres. Si str ou strCharSet est NULL, le gestionnaire de paramètres non valides est appelé, comme décrit dans Validation de paramètre. Si l'exécution est autorisée à se poursuivre, _mbspbrk renvoie NULL et attribue à errno la valeur EINVAL. strpbrk et wcspbrk ne valident pas leurs paramètres. Ces trois fonctions se comportent sinon de façon identique.
_mbspbrk est semblable à _mbscspn mais _mbspbrk retourne un pointeur plutôt qu'une valeur de type size_t.
En C, ces fonctions acceptent un pointeur const comme premier argument. En C++, deux surcharges sont disponibles. La surcharge acceptant un pointeur vers const retourne un pointeur vers const ; la version qui accepte un pointeur vers non-const retourne un pointeur vers non-const. La macro _CONST_CORRECT_OVERLOADS est définie si les versions const et non-const de ces fonctions sont disponibles. Si vous avez besoin d'un comportement non-const pour les deux surcharges C++, définissez le symbol _CONST_RETURN.
La valeur de la sortie est affectée par la valeur du paramètre de la catégorie LC_CTYPE des paramètres régionaux ; consultez setlocale pour plus d'informations. Les versions de ces fonctions sans le suffixe _l utilisent les paramètres régionaux pour ce comportement dépendant des paramètres régionaux ; la version avec le suffixe _l est identique, sauf qu'elle utilise à la place les paramètres régionaux transmis. Pour plus d'informations, consultez Paramètres régionaux.
Mappages de routines de texte générique
Routine TCHAR.H |
_UNICODE & _MBCS non définis |
_MBCS défini |
_UNICODE défini |
---|---|---|---|
_tcspbrk |
strpbrk |
_mbspbrk |
wcspbrk |
N/A |
N/A |
_mbspbrk_l |
N/A |
Configuration requise
Routine |
En-tête requis |
---|---|
strpbrk |
<string.h> |
wcspbrk |
<string.h> ou <wchar.h> |
_mbspbrk, _mbspbrk_l |
<mbstring.h> |
Pour plus d'informations sur la compatibilité, consultez Compatibilité.
Exemple
// 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 );
}
Équivalent .NET Framework
Voir aussi
Référence
Interprétation des séquences de caractères multioctets
strcspn, wcscspn, _mbscspn, _mbscspn_l