.\" -*- coding: UTF-8 -*- .\" Copyright (c) Bruno Haible .\" .\" %%%LICENSE_START(GPLv2+_DOC_ONEPARA) .\" This is free documentation; you can redistribute it and/or .\" modify it under the terms of the GNU General Public License as .\" published by the Free Software Foundation; either version 2 of .\" the License, or (at your option) any later version. .\" %%%LICENSE_END .\" .\" References consulted: .\" GNU glibc-2 source code and manual .\" Dinkumware C library reference http://www.dinkumware.com/ .\" OpenGroup's Single UNIX specification http://www.UNIX-systems.org/online.html .\" ISO/IEC 9899:1999 .\" .\"******************************************************************* .\" .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* .TH WCSRTOMBS 3 "6 Marzo 2019" GNU "Manual del Programador de Linux" .SH NOMBRE wcsrtombs \- convierte una cadena de caracteres anchos a una cadena multibyte .SH SINOPSIS .nf \fB#include \fP .PP \fBsize_t wcsrtombs(char *\fP\fIdest\fP\fB, const wchar_t **\fP\fIsrc\fP\fB,\fP \fB size_t \fP\fIlen\fP\fB, mbstate_t *\fP\fIps\fP\fB);\fP .fi .SH DESCRIPCIÓN Si \fIdest\fP no es un puntero NULL, la función \fBwcsrtombs\fP() convierte la cadena de caracteres anchos \fI*src\fP en una cadena multibyte comenzando en \fIdest\fP. En \fIdest\fP se escriben, como mucho, \fIlen\fP bytes. El estado de cambios \fI*ps\fP se acualiza. La conversión se realiza de forma efectiva llamando repetidamente a \fIwcrtomb(dest, *src, ps)\fP, tantas veces como la llamada sea efectiva e incrementando \fIdest\fP con el número de bytes escritos y \fI*src\fP en uno. La conversión puede pararse por tres razones: .IP 1. 3 Se ha encontrado un carácter ancho que no se puede representar como una secuencia multibyte (de acuerdo con la localización actual). En este caso, \fI*src\fP se deja apuntando al carácter ancho inválido, se devuelve \fI(size_t)\ \-1\fP y \fIerrno\fP toma el valor \fBEILSEQ\fP. .IP 2. El límite de longitud fuerza la parada. En este caso, \fI*src\fP se deja apuntando al siguiente carácter ancho para convertir y devuelve el número de bytes escritos en \fIdest\fP. .IP 3. Se ha completado la conversión de la cadena de caracteres anchos, incluyendo la terminación L'\e0' (que tiene el efecto de devolver \fI*ps\fP al estado inicial). En este caso, \fI*src\fP se pone como NULL y devuelve el número de bytes escritos en \fIdest\fP, excluyendo el byte terminador (\(aq\e0\(aq). .PP Si \fIdest\fP es NULL, \fIlen\fP se ignora, y la conversión procede como arriba, salvo que los bytes convertidos no se escriben en memoria, y no existe límite de longitud. .PP En los dos casos anteriores, si \fIps\fP es un puntero NULL se usa en su lugar un estado estático anónimo sólo conocido por la función \fBwcsrtombs\fP(). .PP El programador tiene que asegurarse de que hay espacio para al menos \fIlen\fP bytes en \fIdest\fP. .SH "VALOR DEVUELTO" La función \fBwcsrtombs\fP() devuelve el número de bytes que conforman la parte de la secuencia multibyte convertida, sin incluir el byte nulo terminador. Si encontró un carácter ancho que no pudo convertir, devuelve \fI(size_t)\ \-1\fP y \fIerrno\fP toma el valor \fBEILSEQ\fP. .SH ATRIBUTOS Para obtener una explicación de los términos usados en esta sección, véase \fBattributes\fP(7). .TS allbox; lb lb lbw28 l l l. Interfaz Atributo Valor T{ \fBwcsrtombs\fP() T} Seguridad del hilo MT\-Carrera insegura:wcsrtombs/!ps .TE .sp 1 .SH "CONFORME A" POSIX.1\-2001, POSIX.1\-2008, C99. .SH NOTAS El comportamiento de \fBwcsrtombs\fP() depende de la categoría \fBLC_CTYPE\fP de la localización actual. .PP Pasar NULL como valor de \fIps\fP no es seguro en un entorno multihilos. .SH "VÉASE TAMBIÉN" \fBiconv\fP(3), \fBmbsinit\fP(3), \fBwcrtomb\fP(3), \fBwcsnrtombs\fP(3), \fBwcstombs\fP(3) .SH COLOFÓN Esta página es parte de la versión 5.10 del proyecto Linux \fIman\-pages\fP. 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/. .PP .SH TRADUCCIÓN La traducción al español de esta página del manual fue creada por Pedro Pablo Fábrega y Juan Piernas . .PP Esta traducción es documentación libre; lea la .UR https://www.gnu.org/licenses/gpl-3.0.html GNU General Public License Version 3 .UE o posterior con respecto a las condiciones de copyright. No existe NINGUNA RESPONSABILIDAD. .PP Si encuentra algún error en la traducción de esta página del manual, envíe un correo electrónico a .MT debian-l10n-spanish@lists.debian.org .ME .