Partager via


strrchr, wcsrchr, _mbsrchr, _mbsrchr_l

Analyse une chaîne à la recherche de la dernière occurrence d’un caractère.

Important

_mbsrchr et _mbsrchr_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 *strrchr(
   const char *str,
   int c
); // C only
char *strrchr(
   char *str,
   int c
); // C++ only
const char *strrchr(
   const char *str,
   int c
); // C++ only
wchar_t *wcsrchr(
   const wchar_t *str,
   wchar_t c
); // C only
wchar_t *wcsrchr(
   wchar_t *str,
   wchar_t c
); // C++ only
const wchar_t *wcsrchr(
   const wchar_t *str,
   wchar_t c
); // C++ only
unsigned char *_mbsrchr(
   const unsigned char *str,
   unsigned int c
); // C only
unsigned char *_mbsrchr(
   unsigned char *str,
   unsigned int c
); // C++ only
const unsigned char *_mbsrchr(
   const unsigned char *str,
   unsigned int c
); // C++ only
unsigned char *_mbsrchr_l(
   const unsigned char *str,
   unsigned int c,
   _locale_t locale
); // C only
unsigned char *_mbsrchr_l(
   unsigned char *str,
   unsigned int c,
   _locale_t locale
); // C++ only
const unsigned char *_mbsrchr_l(
   const unsigned char *str,
   unsigned int c,
   _locale_t locale
); // C++ only

Paramètres

str
Chaîne terminée par Null à trouver.

c
Caractère à trouver.

locale
Paramètres régionaux à utiliser.

Valeur retournée

Retourne un pointeur vers la dernière occurrence de c l’élément , strou NULL s’il c n’est pas trouvé.

Notes

La fonction strrchr recherche la dernière occurrence de c (converti en char) dans str. La recherche inclut le caractère de NULL fin.

wcsrchr et _mbsrchr sont des versions à caractères larges et à caractères multioctets de strrchr. Les arguments et la valeur de retour sont wcsrchr des chaînes à caractères larges. Les arguments et la valeur de retour sont _mbsrchr des chaînes de caractères multioctets.

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.

_mbsrchr valide ses paramètres. Si str c’est NULLle cas, 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 à se poursuivre, errno prend la valeur EINVAL et _mbsrchr retourne 0. strrchr et wcsrchr ne valident pas leurs paramètres. Ces trois fonctions se comportent sinon de façon identique.

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 le suffixe _l utilisent les paramètres régionaux pour ce comportement dépendant des paramètres régionaux ; les versions avec le suffixe _l sont identiques, sauf qu'elles utilisent à 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 routine de texte générique

Routine TCHAR.H _UNICODE et _MBCS non défini _MBCS Défini _UNICODE Défini
_tcsrchr strrchr _mbsrchr wcsrchr
n/a n/a _mbsrchr_l n/a

Spécifications

Routine En-tête requis
strrchr <string.h>
wcsrchr <string.h> ou <wchar.h>
_mbsrchr, _mbsrchr_l <mbstring.h>

Pour plus d'informations sur la compatibilité, consultez Compatibilité.

Exemple

Pour obtenir un exemple d’utilisation strrchr, consultez strchr.

Voir aussi

Manipulation de chaîne
Paramètres régionaux
Interprétation des séquences de caractères multioctets
strchr, wcschr, _mbschr, _mbschr_l
strcspn, wcscspn, _mbscspn, _mbscspn_l
_strnicmp, _wcsnicmp, _mbsnicmp, _strnicmp_l, _wcsnicmp_l, _mbsnicmp_l
strpbrk, wcspbrk, _mbspbrk, _mbspbrk_l
strspn, wcsspn, _mbsspn, _mbsspn_l\