oracular (3) mbsnrtowcs.3.gz

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

NOMBRE

       mbsnrtowcs - convierte una cadena multibyte a una cadena de caracteres anchos

BIBLIOTECA

       Biblioteca Estándar C (libc, -lc)

SINOPSIS

       #include <wchar.h>

       size_t mbsnrtowcs(wchar_t dest[restrict .len], const char **restrict src,
                         size_t nms, size_t len, mbstate_t *restrict ps);

   Requisitos de Macros de Prueba de Características para glibc (véase feature_test_macros(7)):

       mbsnrtowcs():
           Desde glibc 2.10:
               _POSIX_C_SOURCE >= 200809L
           Antes de glibc 2.10:
               _GNU_SOURCE

DESCRIPCIÓN

       La  función  mbsnrtowcs()  es  como  la  función  mbsrtowcs(3), salvo que el número de bytes a convertir,
       comenzando en *src, está limitado a nms.

       Si dest no es un NULL, la función mbsnrtowcs() convierte, como máximo, nms bytes de la  cadena  multibyte
       *src a una cadena de caracteres anchos que comienza en dest. A lo sumo, se escriben len caracteres anchos
       en dest. El estado  de  cambios  *ps  se  actualiza.  La  conversión  se  realiza  en  realidad  llamando
       repetidamente  a mbrtowc(Idest, *src, n, ps), donde n es algún número positivo tal que esta llamada tenga
       éxito, e incrementa a continuación dest en uno y *src en el número de bytes consumidos. La conversión  se
       puede detener por tres motivos:

       •  Se  ha encontrado una secuencia multibyte inválida. En este caso se deja *src apuntando a la secuencia
          multibyte inválida, la función devuelve (size_t) -1 y se asigna a errno el valor EILSEQ.

       •  El límite nms fuerza una parada, o se han almacenado len caracteres anchos distintos de L'\0' en dest.
          En  cuyo  caso,  se  deja  *src  apuntando a la siguiente secuencia multibyte a convertir y la función
          devuelve el número de caracteres anchos escritos en dest.

       •  Se ha convertido completamente la cadena multibyte, incluyendo el  carácter  terminador  ancho  ('\0')
          (que tiene el efecto colateral de devolver a *ps al estado inicial). En esta caso, se asigna a *src un
          NULL y la función devuelve el número de caracteres anchos escritos en dest.

       According to POSIX.1, if the input buffer ends with an incomplete character, it  is  unspecified  whether
       conversion  stops  at the end of the previous character (if any), or at the end of the input buffer.  The
       glibc implementation adopts the former behavior.

       Si dest es NULL, se ignora len, y la conversión procede como  antes,  salvo  que  los  caracteres  anchos
       obtenidos no se escriben en memoria y que no existe límite de longitud en el destino.

       En los dos casos anteriores, si ps es un puntero NULL, en su lugar se usa un estado anónimo privado, sólo
       conocido por la función mbsnrtowcs().

       Los programadores deben garantizar que hay espacio suficiente en dest  para,  al  menos,  len  caracteres
       anchos.

VALOR DEVUELTO

       The  mbsnrtowcs()   function returns the number of wide characters that make up the converted part of the
       wide-character string, not including the terminating  null  wide  character.   If  an  invalid  multibyte
       sequence was encountered, (size_t) -1 is returned, and errno set to EILSEQ.

ATRIBUTOS

       Para obtener una explicación de los términos usados en esta sección, véase attributes(7).

       ┌─────────────┬────────────────────┬─────────────────────────────────────────────────────────────────────┐
       │InterfazAtributoValor                                                               │
       ├─────────────┼────────────────────┼─────────────────────────────────────────────────────────────────────┤
       │mbsnrtowcs() │ Seguridad del hilo │ MT-Unsafe race:mbsnrtowcs/!ps                                       │
       └─────────────┴────────────────────┴─────────────────────────────────────────────────────────────────────┘

ESTÁNDARES

       POSIX.1-2008.

NOTAS

       El comportamiento de mbsnrtowcs() depende de la categoría LC_CTYPE de la localización actual.

       Pasar NULL como valor de ps no es seguro en un entorno multihilos.

VÉASE TAMBIÉN

       iconv(3), mbrtowc(3), mbsinit(3), mbsrtowcs(3)

TRADUCCIÓN

       La  traducción  al  español de esta página del manual fue creada por Juan Piernas <piernas@ditec.um.es> y
       Marcos Fouces <marcos@debian.org>

       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⟩.