mbsnrtowcs(3) Library Functions Manual mbsnrtowcs(3) NOMBRE mbsnrtowcs - convierte una cadena multibyte a una cadena de caracteres anchos BIBLIOTECA Biblioteca Estandar C (libc, -lc) SINOPSIS #include 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 Caracteristicas para glibc (vease feature_test_macros(7)): mbsnrtowcs(): Desde glibc 2.10: _POSIX_C_SOURCE >= 200809L Antes de glibc 2.10: _GNU_SOURCE DESCRIPCION La funcion mbsnrtowcs() es como la funcion mbsrtowcs(3), salvo que el numero de bytes a convertir, comenzando en *src, esta limitado a nms. Si dest no es un NULL, la funcion mbsnrtowcs() convierte, como maximo, 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 conversion se realiza en realidad llamando repetidamente a mbrtowc(Idest, *src, n, ps), donde n es algun numero positivo tal que esta llamada tenga exito, e incrementa a continuacion dest en uno y *src en el numero de bytes consumidos. La conversion se puede detener por tres motivos: o Se ha encontrado una secuencia multibyte invalida. En este caso se deja *src apuntando a la secuencia multibyte invalida, la funcion devuelve (size_t) -1 y se asigna a errno el valor EILSEQ. o El limite 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 funcion devuelve el numero de caracteres anchos escritos en dest. o Se ha convertido completamente la cadena multibyte, incluyendo el caracter 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 funcion devuelve el numero 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 conversion procede como antes, salvo que los caracteres anchos obtenidos no se escriben en memoria y que no existe limite de longitud en el destino. En los dos casos anteriores, si ps es un puntero NULL, en su lugar se usa un estado anonimo privado, solo conocido por la funcion 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 explicacion de los terminos usados en esta seccion, vease attributes(7). +-------------+--------------------+-----------------------------------+ |Interfaz | Atributo | Valor | +-------------+--------------------+-----------------------------------+ |mbsnrtowcs() | Seguridad del hilo | MT-Unsafe race:mbsnrtowcs/!ps | +-------------+--------------------+-----------------------------------+ ESTANDARES POSIX.1-2008. NOTAS El comportamiento de mbsnrtowcs() depende de la categoria LC_CTYPE de la localizacion actual. Pasar NULL como valor de ps no es seguro en un entorno multihilos. VEASE TAMBIEN iconv(3), mbrtowc(3), mbsinit(3), mbsrtowcs(3) TRADUCCION La traduccion al espanol de esta pagina del manual fue creada por Juan Piernas y Marcos Fouces Esta traduccion es documentacion libre; lea la GNU General Public License Version 3 o posterior con respecto a las condiciones de copyright. No existe NINGUNA RESPONSABILIDAD. Si encuentra algun error en la traduccion de esta pagina del manual, envie un correo electronico a . Paginas de manual de Linux 6.06 31 Octubre 2023 mbsnrtowcs(3)