strrchr
, wcsrchr
, _mbsrchr
, _mbsrchr_l
Verifica uma cadeia de caracteres para a última ocorrência de um caractere.
Importante
_mbsrchr
e _mbsrchr_l
não podem ser usados em aplicativos executados no Windows Runtime. Para obter mais informações, confira Funções do CRT sem suporte em aplicativos da Plataforma Universal do Windows.
Sintaxe
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
Parâmetros
str
Cadeia de caracteres terminada em nulo para pesquisa.
c
O caractere a ser alocado.
locale
Localidade a usar.
Valor retornado
Retorna um ponteiro para a última ocorrência de c
in str
, ou NULL
if c
não foi encontrado.
Comentários
A função strrchr
localiza a última ocorrência de c
(convertida em char
) em str
. A pesquisa inclui o caractere NULL
de terminação.
wcsrchr
e _mbsrchr
são versões de caracteres largos e de caracteres multibyte de strrchr
. Os argumentos e o valor retornado de wcsrchr
são cadeias de caracteres largos. Os argumentos e o valor retornado de são cadeias de _mbsrchr
caracteres multibyte.
Em C, essas funções usam um ponteiro const
para o primeiro argumento. No C++, duas sobrecargas estão disponíveis. A sobrecarga de colocar um ponteiro para const
retorna um ponteiro para const
; a versão que usa um ponteiro para não const
retorna um ponteiro para não const
. A macro _CRT_CONST_CORRECT_OVERLOADS
é definida se as versões const
e não const
dessas funções estão disponíveis. Se você precisar do comportamento não const
para as sobrecargas de C++, defina o símbolo _CONST_RETURN
.
_mbsrchr
valida seus parâmetros. Se str
for NULL
, o manipulador de parâmetro inválido será chamado, conforme descrito em Validação de parâmetro. Se a execução tiver permissão para continuar, errno
será definido como EINVAL
e _mbsrchr
retornará 0. strrchr
e wcsrchr
não validam seus parâmetros. Caso contrário, essas três funções se comportam de forma idêntica.
O valor de saída é afetado pela configuração da categoria LC_CTYPE
da localidade; confira setlocale
para obter mais informações. As versões dessas funções sem o sufixo _l
usam a localidade atual desse comportamento dependente da localidade. As versões com o sufixo _l
são idênticas, exceto por usarem o parâmetro de localidade passado em seu lugar. Para obter mais informações, consulte Localidade.
Por padrão, o estado global dessa função tem como escopo o aplicativo. Para alterar esse comportamento, confira Estado global no CRT.
Mapeamentos de rotina de texto genérico
Rotina TCHAR.H | _UNICODE e _MBCS não definidos |
_MBCS definido |
_UNICODE definido |
---|---|---|---|
_tcsrchr |
strrchr |
_mbsrchr |
wcsrchr |
n/a | n/a | _mbsrchr_l |
n/a |
Requisitos
Rotina | Cabeçalho necessário |
---|---|
strrchr |
<string.h> |
wcsrchr |
<string.h> ou <wchar.h> |
_mbsrchr , _mbsrchr_l |
<mbstring.h> |
Para obter mais informações sobre compatibilidade, consulte Compatibilidade.
Exemplo
Para um exemplo de como usar strrchr
, confira strchr
.
Confira também
Manipulação de cadeia de caracteres
Localidade
Interpretação de sequências de caracteres 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
\