Provided by: manpages-es-dev_4.13-4_all bug

NOMBRE

       argz_add, argz_add_sep, argz_append, argz_count, argz_create, argz_create_sep, argz_delete, argz_extract,
       argz_insert, argz_next, argz_replace, argz_stringify - funciones para manejar una lista argz

SINOPSIS

       #include <argz.h>

       error_t argz_add(char **argz, size_t *argz_len, const char *str);

       error_t argz_add_sep(char **argz, size_t *argz_len,
                            const char *str, int delim);

       error_t argz_append(char **argz, size_t *argz_len,
                            const char *buf, size_t buf_len);

       size_t argz_count(const char *argz, size_t argz_len);

       error_t argz_create(char * const argv[], char **argz,
                            size_t *argz_len);

       error_t argz_create_sep(const char *str, int sep, char **argz,
                            size_t *argz_len);

       void argz_delete(char **argz, size_t *argz_len, char *entry);

       void argz_extract(const char *argz, size_t argz_len, char **argv);

       error_t argz_insert(char **argz, size_t *argz_len, char *before,
                            const char *entry);

       char *argz_next(const char *argz, size_t argz_len, const char *entry);

       error_t argz_replace(char **argz, size_t *argz_len, const char *str,
                            const char *with, unsigned int *replace_count);

       void argz_stringify(char *argz, size_t len, int sep);

DESCRIPCIÓN

       Estas funciones son específicas de glibc.

       An argz vector is a pointer to a character buffer together with a length.  The intended interpretation of
       the  character  buffer  is an array of strings, where the strings are separated by null bytes ('\0').  If
       the length is nonzero, the last byte of the buffer must be a null byte.

       These functions are for handling argz vectors.  The pair (NULL,0) is an  argz  vector,  and,  conversely,
       argz  vectors  of  length  0  must  have null pointer.  Allocation of nonempty argz vectors is done using
       malloc(3), so that free(3)  can be used to dispose of them again.

       argz_add() añade la cadena str al final del array *argz, y actualiza *argz y *argz_len.

       argz_add_sep() es similar, pero separa la cadena str en  dos  subcadenas  separadas  por  el  delimitador
       delim. Por ejemplo, se puede utilizar está función en una ruta de búsqueda UNIX con el delimitador ':'.

       argz_append()  añade  el  vector  argz  (buf,buf_len)  después  de (*argz, *argz_len) y actualiza *argz y
       *argz_len. (Así, *argz_len se incrementará en buf_len.)

       argz_count()   counts  the  number  of  strings,  that  is,  the  number  of  null   bytes   ('\0'),   in
       (argz, argz_len).

       argz_create()  convierte  un  vector  de  argumentos  al estilo UNIX argv, terminado en (char *) 0, en un
       vector argz (*argz, *argz_len).

       argz_create_sep()  converts the null-terminated string str into an  argz  vector  (*argz, *argz_len)   by
       breaking it up at every occurrence of the separator sep.

       argz_delete()  elimina  la  subcadena  apuntada  por entry del vector argz (*argz, *argz_len) y actualiza
       *argz y *argz_len.

       argz_extract() es la contraria de argz_create(). Toma un vector argz (argz, argz_len) y rellena el  array
       que  comienza  en argv con punteros a las subcadenas, añadiendo un NULL al final, formando un vector argv
       al estilo UNIX. El array argv debe  tener  suficiente  espacio  para  argz_count  (argz,  argz_len)  +  1
       punteros.

       argz_insert()  es  la  opuesta  de  argz_delete(). Inserta el argumento entry en la posición before en el
       vector argz (*argz, *argz_len) y actualiza *argz y *argz_len. Si before es NULL, entry será insertada  al
       final.

       argz_next()   is  a  function  to  step  through  the  argz vector.  If entry is NULL, the first entry is
       returned.  Otherwise, the entry following is returned.  It returns NULL if there is no following entry.

       argz_replace() reemplaza cada  ocurrencia  de  str  con  with,  reasignando  argz  si  es  necesario.  Si
       replace_count es distinto de NULL, *replace_count se incrementará con el número de reemplazos.

       argz_stringify()   is  the  opposite  of  argz_create_sep().  It transforms the argz vector into a normal
       string by replacing all null bytes ('\0') except the last by sep.

VALOR DEVUELTO

       All argz functions that do memory allocation have a return type of error_t (an integer type), and  return
       0 for success, and ENOMEM if an allocation error occurs.

ATRIBUTOS

       Para obtener una explicación de los términos usados en esta sección, véase attributes(7).
       ┌───────────────────────────────────┬────────────────────┬───────────────────┐
       │ InterfazAtributoValor             │
       ├───────────────────────────────────┼────────────────────┼───────────────────┤
       │ argz_add(), argz_add_sep(),       │ Seguridad del hilo │ Multi-hilo seguro │
       │ argz_append(), argz_count(),      │                    │                   │
       │ argz_create(), argz_create_sep(), │                    │                   │
       │ argz_delete(), argz_extract(),    │                    │                   │
       │ argz_insert(), argz_next(),       │                    │                   │
       │ argz_replace(), argz_stringify()  │                    │                   │
       └───────────────────────────────────┴────────────────────┴───────────────────┘

CONFORME A

       These functions are a GNU extension.

ERRORES

       Argz vectors without a terminating null byte may lead to Segmentation Faults.

VÉASE TAMBIÉN

       envz_add(3)

COLOFÓN

       Esta página es parte de la versión 5.10 del proyecto Linux man-pages. Puede encontrar una descripción del
       proyecto,   información   sobre   cómo   informar   errores  y  la  última  versión  de  esta  página  en
       https://www.kernel.org/doc/man-pages/.

TRADUCCIÓN

       La traducción al español de esta página del manual fue creada por Miguel Pérez Ibars <mpi79470@alu.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.

                                                1 Noviembre 2020                                     ARGZ_ADD(3)