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

NOMBRE

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

SINOPSIS

       #include <wchar.h>

       size_t mbsrtowcs (wchar_t *dest, const char **src,
                         size_t len, mbstate_t *ps);

DESCRIPCIÓN

       Si dest no es un puntero NULL, la función mbsrtowcs convierte la cadena
       multibyte  *src a una cadena de caracteres anchos que comienza en dest.
       Como mucho, 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(dest,*src,n,ps),  donde  n  es  algún  número
       positivo   tal   que  esta  llamada  tenga  éxito,  e  incrementando  a
       continuación dest en uno y *src en el número de  bytes  consumidos.  La
       conversión se puede detener por tres razones:

       1.  Se encuentar 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.

       2.  Se han almacenado len caracteres anchos distintos de L’\0’ en dest.
       En este caso, *src se deja apuntado a la siguiente secuencia  multibyte
       a  convertir  y  la  función  devuelve  el  número de caracteres anchos
       escritos en dest.

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

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

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

       El programador debe garantizar que hay espacio suficiente en dest para,
       al menos, len caracteres anchos.

VALOR DEVUELTO

       La  función  mbsrtowcs  devuelve  el  número  de  caracteres anchos que
       componen la parte convertida de la cadena  de  caracteres  anchos,  sin
       incluir  el  carácter  ancho  terminador  nulo.  Si  se  encuentra  una
       secuencia multibyte inválida, se devuelve (size_t)(-1) y  se  asigna  a
       errno el valor EILSEQ.

CONFORME A

       ISO/ANSI C, UNIX98

VÉASE TAMBIÉN

       mbstowcs(3), mbsnrtowcs(3), iconv(3)

OBSERVACIONES

       El  comportamiento  de mbsrtowcs 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.