1. NOM▲
memchr, memrchr, rawmemchr - Rechercher un caractère dans une zone mémoire
2. SYNOPSIS ▲
#include <string.h>
void
*
memchr
(
const
void
*
s, int
c, size_t n);
void
*
memrchr
(
const
void
*
s, int
c, size_t n);
void
*
rawmemchr
(
const
void
*
s, int
c);
Exigences de macros de test de fonctionnalités pour la glibc (consultez feature_test_macros(7)) :
memrchr(), rawmemchr() : _GNU_SOURCE
3. DESCRIPTION ▲
La fonction memchr() examine les n premiers octets de la zone mémoire pointée par s à la recherche de la première occurrence de c. À la fois s et les octets de la zone mémoire pointée par s sont interprétés comme des unsigned char.
La fonction memrchr() travaille comme memchr(), sauf qu'elle recherche en arrière depuis la fin de la zone de n octets pointée par s plutôt que depuis le début. La fonction rawmemchr() est semblable à memchr() : elle suppose (c'est-à-dire que le développeur en est sûr) qu'une occurrence de c se trouve quelque part dans la zone de mémoire qui commence à l'endroit pointé par s et fait ainsi une recherche optimisée de c (c'est-à-dire sans utiliser d'argument de comptage pour limiter la longueur de la recherche). Si aucune occurrence de c n'est trouvée les résultats sont imprévisibles. L'appel suivant est une manière rapide pour trouver le caractère nul de fin d'une chaîne :
char
*
p =
rawmemchr
(
s, \0
);
4. VALEUR RENVOYÉE ▲
Les fonctions memchr() et memrchr() renvoient un pointeur sur l'octet correspondant, ou NULL si le caractère n'est pas présent dans la zone de mémoire concernée. La fonction rawmemchr() renvoie un pointeur sur l'octet correspondant, s'il est trouvé. Si aucun caractère correspondant n'est trouvé, le résultat n'est pas spécifié.
5. VERSIONS ▲
rawmemchr() a été introduite dans la glibc dans sa version 2.1. memrchr() a été introduite dans la glibc dans sa version 2.2.
6. CONFORMITÉ ▲
La fonction memchr() se conforme à SVr4, BSD 4.3, C89, C99 et POSIX.1-2001. La fonction memrchr() est une extension GNU disponible depuis la glibc 2.1.91. La fonction rawmemchr() est une extension GNU disponible depuis la glibc 2.1.
7. VOIR AUSSI ▲
ffs(3), index(3), rindex(3), strchr(3), strpbrk(3), strrchr(3), strsep(3), strspn(3), strstr(3), wmemchr(3)
8. COLOPHON ▲
Cette page fait partie de la publication 3.52 du projet man-pages Linux. Une description du projet et des instructions pour signaler des anomalies peuvent être trouvées à l'adresse http://www.kernel.org/doc/man-pages/.
9. TRADUCTION ▲
Depuis 2010, cette traduction est maintenue à l'aide de l'outil po4a <http://po4a.alioth.debian.org/> par l'équipe de traduction francophone au sein du projet perkamon <http://perkamon.alioth.debian.org/>.
Christophe Blaess <http://www.blaess.fr/christophe/> (1996-2003), Alain Portal <http://manpagesfr.free.fr/> (2003-2006). Florentin Duneau et l'équipe francophone de traduction de Debian (2006-2009).
Veuillez signaler toute erreur de traduction en écrivant à <>.
Vous pouvez toujours avoir accès à la version anglaise de ce document en utilisant la commande « LC_ALL=C man <section> <page_de_man> ».