table of contents
MEMMEM(3) | Manual del Programador de Linux | MEMMEM(3) |
NOMBRE¶
memmem - localiza una subcadena
SINOPSIS¶
#define _GNU_SOURCE
#include <string.h> void *memmem(const void *haystack, size_t haystacklen,
const void *needle, size_t needlelen);
DESCRIPCIÓN¶
La función memmem() busca el principio de la primera ocurrencia de la subcadena needle de longitud needlelen en el área de memoria haystack de longitud haystacklen.
VALOR DEVUELTO¶
La función memmem() devuelve un puntero al principio de la subcadena, o NULL si la subcadena no se encuentra.
CONFORME A¶
Esta función es una extensión GNU.
FALLOS¶
Esta función se adaptó a las bibliotecas de Linux y
se incluyó a partir de la versión 5.0.9 de libc; allí
los argumentos `needle' y `haystack' estaban intercambiados y se
devolvía un puntero al final de la primera ocurrencia de
needle. Ya que todavía se usa ampliamente libc 5.0.9, es
peligroso utilizar esta función.
Tanto la antigua como la nueva libc tienen el fallo de que si needle es
vacío, se devuelve haystack-1 (en lugar de haystack). Y
glibc 2.0 lo hace peor todavía y devuelve un puntero al último
byte de `haystack'. Ésto ha sido solucionado en glibc 2.1.
VÉASE TAMBIÉN¶
13 Enero 1998 | GNU |