función strrchr() en C/C++

Función strrchr() 
En C++, strrchr() es una función predefinida utilizada para el manejo de strings. cstring es el archivo de encabezado requerido para las funciones de string.
Esta función devuelve un puntero a la última aparición de un carácter en una string. 
El carácter cuya última aparición queremos encontrar se pasa como segundo argumento a la función y la string en la que tenemos que encontrar el carácter se pasa como primer argumento a la función. 
Sintaxis 
 

char *strrchr(const char *str, int c)

Aquí, str es la string y c es el carácter a localizar. Se pasa como su promoción int, pero se vuelve a convertir internamente en char. 
Aplicación 
Dada una string en C++, necesitamos encontrar la última aparición de un carácter, digamos ‘a’.
Ejemplos: 
 

Input : string = 'This is a string'
Output :9

Input :string = 'My name is Ayush'
Output :12

Algoritmo 
1. Pase la string dada en la función strrchr() y mencione el carácter que necesita señalar. 
2. La función devuelve un valor, imprima el valor.
 

CPP

// C++ program to demonstrate working strchr()
#include <iostream>
#include <cstring>
using namespace std;
 
int main()
{
  char str[] = "This is a string";
  char * ch = strrchr(str,'a');
  cout << ch - str + 1;
  return 0;
}

Producción: 
 

9

Ejemplos de C: 
 

C

// C code to demonstrate the working of
// strrchr()
 
#include <stdio.h>
#include <string.h>
 
// Driver function
int main()
{
 
    // initializing variables
    char st[] = "GeeksforGeeks";
    char ch = 'e';
    char* val;
 
    // Use of strrchr()
    // returns "ks"
    val = strrchr(st, ch);
 
    printf("String after last %c is :  %s \n", ch, val);
 
    char ch2 = 'm';
 
    // Use of strrchr()
    // returns null
    // test for null
    val = strrchr(st, ch2);
 
    printf("String after last %c is :  %s ", ch2, val);
 
    return (0);
}

Producción: 
 

String after last e is :  eks 
String after last m is :  (null)

Aplicación práctica: dado que devuelve la string completa después de la última aparición de un carácter en particular, se puede usar para extraer el sufijo de una string . Por ejemplo, para conocer los ceros iniciales completos en una denominación cuando conocemos el primer número. Este ejemplo se muestra a continuación.
 

C

// C code to demonstrate the application of
// strrchr()
 
#include <stdio.h>
#include <string.h>
 
// Driver function
int main()
{
 
    // initializing the denomination
    char denom[] = "Rs 10000000";
 
    // Printing original string
    printf("The original string is : %s", denom);
 
    // initializing the initial number
    char first = '1';
    char* entire;
 
    // Use of strrchr()
    // returns entire number
    entire = strrchr(denom, first);
 
    printf("\nThe denomination value is : %s ", entire);
 
    return (0);
}

Producción: 
 

The original string is : Rs 10000000
The denomination value is : 10000000

Este artículo es una contribución de Ayush Saxena y Vaishnavi Tripathi . Si te gusta GeeksforGeeks y te gustaría contribuir, también puedes escribir un artículo usando write.geeksforgeeks.org o enviar tu artículo por correo a review-team@geeksforgeeks.org. Vea su artículo que aparece en la página principal de GeeksforGeeks y ayude a otros Geeks.
Escriba comentarios si encuentra algo incorrecto o si desea compartir más información sobre el tema tratado anteriormente.
 

Publicación traducida automáticamente

Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *