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
       ⟨https://www.gnu.org/licenses/gpl-3.0.html⟩ 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)