Namespaces
Variants

strrchr

From cppreference.net
< c ‎ | string ‎ | byte
Definido en el encabezado <string.h>
char * strrchr ( const char * str, int ch ) ;
(1)
/*QChar*/ * strrchr ( /*QChar*/ * str, int ch ) ;
(2) (desde C23)
1) Encuentra la última ocurrencia de ch (después de la conversión a char como si fuera mediante ( char ) ch ) en la cadena de bytes terminada en nulo apuntada por str (cada carácter interpretado como unsigned char ). El carácter nulo terminador se considera parte de la cadena y puede encontrarse si se busca ' \0 ' .
2) Función genérica de tipos equivalente a (1) . Sea T un tipo de objeto de carácter no calificado.
  • Si str es de tipo const T * , el tipo de retorno es const char * .
  • De lo contrario, si str es de tipo T * , el tipo de retorno es char * .
  • De lo contrario, el comportamiento es indefinido.
Si se suprime la definición de macro de cada una de estas funciones genéricas para acceder a una función real (por ejemplo, si se usa ( strrchr ) o un puntero a función), la declaración de función real (1) se hace visible.

El comportamiento es indefinido si str no es un puntero a una cadena de bytes terminada en nulo.

Contenidos

Parámetros

str - puntero a la cadena de bytes terminada en nulo que se va a analizar
ch - carácter a buscar

Valor de retorno

Puntero al carácter encontrado en str , o puntero nulo si no se encuentra dicho carácter.

Ejemplo

#include <stdio.h>
#include <string.h>
int main(void)
{
    char szSomeFileName[] = "foo/bar/foobar.txt";
    char* pLastSlash = strrchr(szSomeFileName, '/');
    char* pszBaseName = pLastSlash ? pLastSlash + 1 : szSomeFileName;
    printf("Base Name: %s", pszBaseName);
}

Salida:

Base Name: foobar.txt

Referencias

  • Estándar C23 (ISO/IEC 9899:2024):
  • 7.24.5.5 La función strrchr (p: TBD)
  • Estándar C17 (ISO/IEC 9899:2018):
  • 7.24.5.5 La función strrchr (p: TBD)
  • Estándar C11 (ISO/IEC 9899:2011):
  • 7.24.5.5 La función strrchr (p: 368-369)
  • Estándar C99 (ISO/IEC 9899:1999):
  • 7.21.5.5 La función strrchr (p: 331)
  • Estándar C89/C90 (ISO/IEC 9899:1990):
  • 4.11.5.5 La función strrchr

Véase también

encuentra la primera ocurrencia de un carácter
(función)
encuentra la primera ubicación de cualquier carácter de una cadena, en otra cadena
(función)