table of contents
- bookworm 4.18.1-1
- bookworm-backports 4.24.0-2~bpo12+1
- testing 4.24.0-2
- unstable 4.24.0-2
strdup(3) | Library Functions Manual | strdup(3) |
NOMBRE¶
strdup, strndup, strdupa, strndupa - duplican una cadena de caracteres
BIBLIOTECA¶
Biblioteca Estándar C (libc, -lc)
SINOPSIS¶
#include <string.h>
char *strdup(const char *s);
char *strndup(const char s[.n], size_t n); char *strdupa(const char *s); char *strndupa(const char s[.n], size_t n);
strdup():
_XOPEN_SOURCE >= 500
|| /* Desde glibc 2.12: */ _POSIX_C_SOURCE >= 200809L
|| /* glibc <= 2.19: */ _BSD_SOURCE || _SVID_SOURCE
strndup():
Desde glibc 2.10:
_POSIX_C_SOURCE >= 200809L
Antes de glibc 2.10:
_GNU_SOURCE
strdupa(), strndupa():
_GNU_SOURCE
DESCRIPCIÓN¶
La función 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 automáticamente con malloc(3), y puede (y debe) liberarse con free(3).
The strndup() function is similar, but copies at most n bytes. If s is longer than n, only n bytes are copied, and a terminating null byte ('\0') is added.
strdupa() y strndupa() son similares, pero usan alloca(3) para reservar el buffer.
VALOR DEVUELTO¶
On success, the strdup() function returns a pointer to the duplicated string. It returns NULL if insufficient memory was available, with errno set to indicate the error.
ERRORES¶
- ENOMEM
- Memoria insuficiente disponible para alojar la cadena duplicada.
ATRIBUTOS¶
Para obtener una explicación de los términos usados en esta sección, véase attributes(7).
Interfaz | Atributo | Valor |
strdup(), strndup(), strdupa(), strndupa() | Seguridad del hilo | Multi-hilo seguro |
ESTÁNDARES¶
strdup() conforms to SVr4, 4.3BSD, POSIX.1-2001. strndup() conforms to POSIX.1-2008. strdupa() and strndupa() are GNU extensions.
VÉASE TAMBIÉN¶
alloca(3), calloc(3), free(3), malloc(3), realloc(3), string(3), wcsdup(3)
TRADUCCIÓN¶
La traducción al español de esta página del manual fue creada por Gerardo Aburruzaga García <gerardo.aburruzaga@uca.es> y Marcos Fouces <marcos@debian.org>
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.
5 Febrero 2023 | Páginas de Manual de Linux 6.03 |