Provided by: manpages-es_1.55-10_all bug

NOMBRE

       strdup, strndup, strdupa, strndupa - duplican una cadena de caracteres

SINOPSIS

       #include <string.h>

       char *strdup(const char *s);

       #define _GNU_SOURCE
       #include <string.h>

       char *strndup(const char *s, size_t n);
       char *strdupa(const char *s);
       char *strndupa(const char *s, size_t n);

DESCRIPCI'ON

       La  funcion  strdup()  devuelve  un  puntero  a  una  nueva  cadena  de
       caracteres que es un duplicado de la cadena apuntada por s.  La memoria
       para  la nueva cadena se obtiene automaticamente con malloc(3), y puede
       (y debe) liberarse con free(3).

       La funcion strndup() es similar, pero solamente  copia  como  maximo  n
       caracteres.  Si  s  es  mayor  que n, solo se copian n caracteres, y se
       anade un NUL al final.

       strdupa y strndupa son similares, pero usan alloca(3) para reservar  el
       buffer.  Solo  estan disponibles cuando se usa la aplicacion GNU GCC, y
       sufren las mismas limitaciones descritas en alloca(3).

VALOR DEVUELTO

       La funcion strdup() devuelve un puntero a la cadena duplicada,  o  NULL
       si no habia bastante memoria.

ERRORES

       ENOMEM Memoria insuficiente disponible para alojar la cadena duplicada.

CONFORME A

       SVID 3, BSD 4.3.  strndup(), strdupa(), y strndupa() son extensiones de
       GNU.

V'EASE TAMBI'EN

       alloca(3), calloc(3), free(3), malloc(3), realloc(3)