.\" Copyright (c) Bruno Haible .\" .\" Traducida por Pedro Pablo Fábrega .\" Esto es documentación libre; puede redistribuirla y/o .\" modificarla bajo los términos de la Licencia Pública General GNU .\" publicada por la Free Software Foundation; bien la versión 2 de .\" la Licencia o (a su elección) cualquier versión posterior. .\" .\" Referencias consultadas: .\" código fuente y manual de glibc-2 GNU .\" referencia de la bibliote C Dinkumware http://www.dinkumware.com/ .\" Especificaciones Single Unix de OpenGroup http://www.UNIX-systems.org/onl .\" .\" Translation revised Wed Aug 2 2000 by Juan Piernas .\" .TH WCSTOMBS 3 "25 julio 1999" "GNU" "Manual del Programador Linux" .SH NOMBRE wcstombs \- convierte una cadena de caracteres anchos a una cadena mulibyte .SH SYNOPSIS .nf .B #include .sp .BI "size_t wcstombs (char *" dest ", const wchar_t *" src ", size_t " n ); .fi .SH DESCRIPCIÓN Si \fIdest\fP no es un puntero NULL, la función \fBwcstombs\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, \fIn\fP bytes. El estado de cambios \fI*ps\fP se acualiza. La conversión comienza en el estado inicial. La conversión puede pararse por tres razones: .PP 1. 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 se devuelve (size_t)(-1). .PP 2. El límite de longitud fuerza la parada. En este caso, devuelve el número de bytes escritos en \fIdest\fP pero el estado de cambios en este punto se pierde. .PP 3. Se ha completado la conversión de la cadena de caracteres anchos, incluyendo la terminación L'\\0'. En este caso, la conversión termina en el estado inicial. Devuelve el número de bytes escritos en \fIdest\fP, excluyendo el byte terminador '\\0'. .PP El programador tiene que asegurarse de que hay espacio para al menos \fIn\fP bytes en \fIdest\fP. .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 Para evitar los dos casos anteriores, el programador debería estar seguro de que \fIn\fP es mayor o igual a \fIwcstombs(NULL,src,0)+1\fP. .SH "VALOR DEVUELTO" la función \fBwcstombs\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 (size_t)(-1). .SH "CONFORME A" ISO/ANSI C, UNIX98 .SH "VÉASE TAMBIÉN" .BR wcsrtombs (3) .SH OBSERVACIONES El comportamiento de \fBwcstombs\fP depende de la categoría LC_CTYPE de la localización actual. .PP La función \fBwcsrtombs\fP proporciona un interfaz seguro para hilos con la misma funcionalidad.