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.
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.