NOMBRE
wctomb − convierte una carácter ancho a un secuencia multibyte
SINOPSIS
#include <stdlib.h>
int wctomb (char *s, wchar_t wc);
DESCRIPCIÓN
Si s no es NULL, la función wctomb convierte el carácter ancho wc a su representación multibyte y lo guarda al principio de la cadena de caracteres apuntada por s. Actualiza el estado de cambios, que se guarda en una variable privada anónima sólo conocida por la función wctomb, y devuelve la longitud de dicha representación multibyte, es decir, el número de bytes escritos en s.
El programador tiene que asegurarse de que hay suficiente espacio para al menos MB_CUR_MAX bytes en s.
Si s es NULL, la función wctomb reinicia el estado de cambios, sólo conocido por esta función, al estado inicial y devuelve un valor no nulo si la codificación tiene un estado de cambios no trivial, o cero si la codificación no tiene estado.
VALOR DEVUELTO
Si s no es nulo, la función wctomb devuelve el número de bytes que han sido escritos en el vector de bytes s. Si wc no se puede representar como un secuencia multibyte (de acuerdo a la localización actual), devuelve −1.
Si s es nulo, la función wctomb devuelve un valor no nulo si la codificación tiene un estado de cambios no trivial, o cero si la codificación no tiene estado.
CONFORME A
ISO/ANSI C, UNIX98
VÉASE TAMBIÉN
wcrtomb(3), wcstombs(3), MB_CUR_MAX(3)
OBSERVACIONES
El comportamiento de wctomb depende de la categoría LC_CTYPE de la localización actual.
Esta función no es segura para multihilo. La función wcrtomb proporciona un interfaz mejor con la misma funcionalidad.