Le man de la fonction strrchr
🎯 Rechercher un caractère dans une chaîne, en commençant par la fin.
⚙️ Prototype de strrchr
char *strrchr(const char *s, int c);
🧑💻 Fonctionnement de strrchr
La fonction strrchr
recherche la dernière occurrence d’un caractère spécifique (c
) dans la chaîne de caractères pointée par s
. Contrairement à strchr
, qui trouve la première occurrence, strrchr
permet de localiser la dernière position de ce caractère dans la chaîne. Elle retourne un pointeur vers cette position dans la chaîne ou un pointeur NULL
si le caractère n’est pas trouvé. Le caractère recherché peut être n’importe quel caractère ASCII, y compris le caractère nul \0
.
Paramètres :
s
: Pointeur vers la chaîne de caractères où la recherche sera effectuée.c
: Le caractère à rechercher, représenté en tant qu’entier mais correspondant à un caractère ASCII.
Retour :
- Un pointeur vers la dernière occurrence du caractère
c
dans la chaînes
. NULL
si le caractèrec
n’est pas trouvé dans la chaîne.
Remarques :
- strrchr est particulièrement utile lorsque vous devez localiser la dernière occurrence d’un caractère spécifique, comme dans des cas de manipulation de chemins de fichiers ou de parsing de chaînes complexes.
- Attention : Si le caractère recherché est \0, strrchr retournera un pointeur vers ce caractère nul de fin de chaîne.
✨ Exemple d'utilisation de strrchr
Recherche du dernier caractère dans une chaîne :
👉 Ici, strrchr est utilisé pour trouver le dernier / dans un chemin de fichier, ce qui permet d’extraire le nom du fichier du chemin complet.
char *path = "/usr/local/bin";
char *filename = strrchr(path, '/');
if (filename) {
printf("Le nom du fichier est : %s\n", filename + 1);
} else {
printf("Aucun '/' trouvé dans le chemin.\n");
}
Voir aussi :
strchr
: Recherche la première occurrence d’un caractère dans une chaîne.strstr
: Recherche la première occurrence d’une sous-chaîne dans une autre chaîne.strncpy
: Copie un nombre limité de caractères d’une chaîne dans une autre.strlen
: Calcule la longueur d’une chaîne de caractères.strncat
: Concatène deux chaînes de caractères en limitant la longueur.