Provided by: manpages-pt-dev_20040726-2_all bug

NOME

       wcrtomb - converte um caractere largo para uma sequencia multibyte

SINOPSE

       #include <wchar.h>

       size_t wcrtomb (char *s, wchar_t wc, mbstate_t *ps);

DESCRIÇÃO

       O  principal  caso  para  esta  função é quando s é não NULL e wc não é
       L’\0’.  Nesse caso, a função wcrtomb converte o caractere largo wc para
       sua  representação  multibyte  e  armazena-o  no  início  do  vetor  de
       caracteres apontado por s.  Atualiza o indicador de deslocamento *ps, e
       retorna  o  tamanho  da representação em multibyte, isto é, o número de
       bytes escritos em s.

       Um caso diferente é quando s é não NULL mas wc é L’\0’.  Nesse  caso  a
       função  wcrtomb  armazena  no  vetor  de  caracteres  apontado  por s a
       sequencia de deslocamento necessária para trazer *ps de  volta  ao  seu
       estado  inicial,  seguida  por um byte ’\0’. Atualiza o indicador de de
       estado *ps (i.e. leva-o ao estado inicial),  e  retorna  o  tamanho  da
       sequencia  de  deslocamento mais um, i.e. o número de bytes escritos em
       s.

       O terceiro caso é quando s é NULL. Nesse caso wc é ignorado, e a função
       efetivamente retorna wcrtomb(buf,L’\0’,ps) onde buf é um buffer interno
       anônimo.

       Em todos os casos acima, se ps é um ponteiro  NULL,  o  estado  anônimo
       estático  somente  da  a  conhecer para a função wcrtomb é usada em seu
       lugar.

VALOR DE RETORNO

       A função wcrtomb retorna o número de bytes que foram  ou  deveriam  ter
       sido  escritos para o vetor de byte s. Se wc não puder ser representado
       como uma  sequencia  multibyte  (de  acordo  com  o  locale  corrente),
       (size_t)(-1) é retornado, e errno é atualizado para EILSEQ.

CONFORMIDADE

       ISO/ANSI C, UNIX98

VEJA TAMBÉM

       wcsrtombs(3)

NOTAS

       O  comportamento  de  wcrtomb  depende  da categoria LC_CTYPE do locale
       corrente.

       A passagem de NULL como ps não é segura para multi-thread.

TRADUZIDO POR LDP-BR em 25/08/2000

       Marcelo D. Beckmann <marcelobeckmann@yahoo.com> (tradução) Espaço  para
       o Revisor <nome@dominio.com.br> (revisão)