Provided by: manpages-es-dev_4.27.0-1_all bug

NOMBRE

       memcpy - copiar area de memoria

BIBLIOTECA

       Biblioteca Estándar C (libc, -lc)

SINOPSIS

       #include <string.h>

       void *memcpy(void dest[restrict .n], const void src[restrict .n],
                    size_t n);

DESCRIPCIÓN

       The  memcpy()   function  copies n bytes from memory area src to memory area dest.  The memory areas must
       not overlap.  Use memmove(3) if the memory areas do overlap.

VALOR DEVUELTO

       La funcion memcpy() devuelve un puntero a dest.

ATRIBUTOS

       Para obtener una explicación de los términos usados en esta sección, véase attributes(7).
       ┌──────────────────────────────────────────────────────────────┬────────────────────┬───────────────────┐
       │ InterfazAtributoValor             │
       ├──────────────────────────────────────────────────────────────┼────────────────────┼───────────────────┤
       │ memcpy()                                                     │ Seguridad del hilo │ Multi-hilo seguro │
       └──────────────────────────────────────────────────────────────┴────────────────────┴───────────────────┘

ESTÁNDARES

       C11, POSIX.1-2008.

HISTORIAL

       POSIX.1-2001, C89, SVr4, 4.3BSD.

CAVEATS

       Failure to observe the requirement that  the  memory  areas  do  not  overlap  has  been  the  source  of
       significant  bugs.   (POSIX  and  the  C standards are explicit that employing memcpy()  with overlapping
       areas produces undefined behavior.)  Most notably, in glibc 2.13 a performance optimization  of  memcpy()
       on  some  platforms (including x86-64) included changing the order in which bytes were copied from src to
       dest.

       This change revealed breakages in a number of applications that performed copying with overlapping areas.
       Under the previous implementation, the order in which the bytes were copied had fortuitously  hidden  the
       bug, which was revealed when the copying order was reversed.  In glibc 2.14, a versioned symbol was added
       so  that  old binaries (i.e., those linked against glibc versions earlier than 2.14)  employed a memcpy()
       implementation that safely handles the  overlapping  buffers  case  (by  providing  an  "older"  memcpy()
       implementation that was aliased to memmove(3)).

VÉASE TAMBIÉN

       bcopy(3), bstring(3), memccpy(3), memmove(3), mempcpy(3), strcpy(3), strncpy(3), wmemcpy(3)

TRADUCCIÓN

       La   traducción   al   español   de   esta  página  del  manual  fue  creada  por  Vicente  Pastor  Gómez
       <vpastorg@santandersupernet.com> y Juan Piernas <piernas@ditec.um.es>

       Esta traducción es documentación libre;  lea  la  GNU General Public License Version 3  o  posterior  con
       respecto a las condiciones de copyright.  No existe NINGUNA RESPONSABILIDAD.

       Si  encuentra  algún  error  en  la  traducción  de esta página del manual, envíe un correo electrónico a
       debian-l10n-spanish@lists.debian.org.

Páginas de Manual de Linux 6.9.1                   2 Mayo 2024                                         memcpy(3)