strpbrk
, , wcspbrk
_mbspbrk
, ,_mbspbrk_l
Analyse des chaînes à la recherche de caractères présents dans les jeux de caractères spécifiés.
Important
_mbspbrk
et _mbspbrk_l
ne peuvent pas être utilisées dans les applications qui s'exécutent dans Windows Runtime. Pour plus d’informations, consultez Fonctions CRT non prises en charge dans les applications de la plateforme Windows universelle.
Syntaxe
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 se terminant par un caractère Null faisant l’objet de la recherche.
strCharSet
Jeu de caractères se terminant par null.
locale
Paramètres régionaux à utiliser.
Valeur retournée
Retourne un pointeur désignant 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 désignant la première occurrence d’un caractère dans str
qui appartient au jeu de caractères de strCharSet
. La recherche n’inclut pas le caractère null de fin.
wcspbrk
et _mbspbrk
sont des versions à caractères larges et à caractères multioctets de strpbrk
. Les arguments et la valeur de retour sont wcspbrk
des chaînes à caractères larges. Les arguments et la valeur de retour sont _mbspbrk
des chaînes de caractères multioctets.
_mbspbrk
valide ses paramètres. Si str
ou strCharSet
est NULL
, le gestionnaire de paramètres non valide est appelé, comme décrit dans la validation des paramètres. Si l'exécution est autorisée à continuer, _mbspbrk
retourne NULL
et définit errno
à EINVAL
. strpbrk
et wcspbrk
ne valident pas leurs paramètres. Ces trois fonctions se comportent sinon de façon identique.
_mbspbrk
est similaire à ce _mbscspn
qui _mbspbrk
renvoie 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 _CRT_CONST_CORRECT_OVERLOADS
est définie si les const
versions et non-versionsconst
de ces fonctions sont disponibles. Si vous avez besoin du comportement non-comportementconst
pour les deux surcharges C++, définissez le symbole _CONST_RETURN
.
La valeur de sortie est affectée par le paramètre de catégorie LC_CTYPE
des paramètres régionaux ; pour plus d’informations, consultez setlocale
. Les versions de ces fonctions sans suffixe _l
utilisent les paramètres régionaux actifs pour ce comportement dépendant des paramètres régionaux ; la version avec suffixe _l
est identique, sauf qu’elle utilise à la place les paramètres régionaux transmis. Pour plus d’informations, consultez Locale.
Par défaut, l’état global de cette fonction est limité à l’application. Pour modifier ce comportement, consultez État global dans le CRT.
Mappages de routines de texte générique
Routine TCHAR.H | _UNICODE et _MBCS non définis |
_MBCS défini |
_UNICODE défini |
---|---|---|---|
_tcspbrk |
strpbrk |
_mbspbrk |
wcspbrk |
n/a | n/a | _mbspbrk_l |
n/a |
Spécifications
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 );
}
1: The 3 men and 2 boys ate 5 pigs
2: 3 men and 2 boys ate 5 pigs
3: 2 boys ate 5 pigs
4: 5 pigs
Voir aussi
Manipulation de chaînes
Paramètres régionaux
Interprétation des séquences de caractères multioctets
strcspn
, , wcscspn
_mbscspn
, ,_mbscspn_l
strchr
, , wcschr
_mbschr
, ,_mbschr_l
strrchr
, , wcsrchr
_mbsrchr
, ,_mbsrchr_l