Condividi tramite


strrchr, wcsrchr, _mbsrchr, _mbsrchr_l

Analizza una stringa per l'ultima occorrenza di un carattere.

Importante

_mbsrchr e _mbsrchr_l non possono essere utilizzate nelle applicazioni che vengono eseguite in Windows Runtime.Per ulteriori informazioni, vedere Funzioni CRT non supportate con /ZW.

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

Parametri

  • str
    Stringa da cercare con terminazione null.

  • c
    Carattere da localizzare.

  • locale
    Impostazioni locali da utilizzare.

Valore restituito

Restituisce un puntatore all'ultima occorrenza di c in str, o NULL se c non viene trovato.

Note

La funzione strrchr ricerca l'ultima occorrenza di c (convertito in char) in str. La ricerca include il carattere di terminazione null.

wcsrchr e _mbsrchr sono versioni a caratteri di tipo "wide" e di caratteri multibyte di strrchr. Gli argomenti e il valore restituito di wcsrchr sono stringhe di caratteri di tipo "wide", quelli di _mbsrchr sono stringhe di caratteri multibyte.

In C, queste funzioni accettano un puntatore const come primo argomento. In C++, sono disponibili due overload. L'overload che accetta un puntatore a const restituisce un puntatore a const; la versione che accetta un puntatore a un non-const non restituisce un puntatore a un non-const. La macro _CONST_CORRECT_OVERLOADS è definito se è entrambe le versioni const e non-const di queste funzioni sono disponibili. Se è necessario che entrambi gli overload C++ abbiano il comportamento non-const, definire il simbolo _CONST_RETURN.

_mbsrchr convalida i suoi parametri. Se str è NULL, viene richiamato il gestore di parametro non valido, come descritto in Convalida dei parametri. Se l'esecuzione può continuare, errno è settato a EINVAL e _mbsrchr restituisce 0. strrchr e wcsrchr non convalidano i relativi parametri. Altrimenti queste tre funzioni si comportano in modo identico.

Il valore di output è interessato dall'impostazione di categoria LC_CTYPE delle impostazioni locali; per ulteriori informazioni vedere setlocale. Le versioni di queste funzioni senza il suffisso _l utilizzano le impostazioni locali correnti per il comportamento dipendente dalle impostazioni locali; le versioni con il suffisso _l sono identiche, ad eccezione del fatto che utilizzano il parametro delle impostazioni locali che viene passato. Per ulteriori informazioni, vedere Impostazioni locali.

Mapping di routine su testo generico

Routine TCHAR.H

_UNICODE & _MBCS non definiti

_MBCS definito

_UNICODE definito

_tcsrchr

strrchr

_mbsrchr

wcsrchr

n/d

n/d

_mbsrchr_l

n/d

Requisiti

Routine

Intestazione obbligatoria

strrchr

<string.h>

wcsrchr

<string.h> o <wchar.h>

_mbsrchr, _mbsrchr_l

<mbstring.h>

Per ulteriori informazioni sulla compatibilità, vedere Compatibilità.

Esempio

Per un esempio di utilizzo di strrchr, vedere strchr.

Equivalente .NET Framework

System::String::LastIndexOf

Vedere anche

Riferimenti

Modifica di stringhe (CRT)

Impostazioni locali

Interpretazione di sequenze di caratteri multibyte

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