wctomb, _wctomb_l
Converta um caractere largo para os caracteres multibyte correspondente.Versões mais seguras dessas funções estão disponíveis; see wctomb_s, _wctomb_s_l.
int wctomb(
char *mbchar,
wchar_t wchar
);
int _wctomb_l(
char *mbchar,
wchar_t wchar,
_locale_t locale
);
Parâmetros
mbchar
O endereço de um caracteres multibyte.wchar
Um caractere largo.
Valor de retorno
Se wctomb converte o caractere largo para um caractere de vários bytes, ele retorna o número de bytes (que nunca é maior que MB_CUR_MAX) no caractere grande.Se wchar é o caractere nulo de caractere largo (L '\0'), wctomb retorna 1.Se o ponteiro de destino mbchar for NULL, wctomb retorna 0.Se a conversão não é possível na localidade atual, wctomb retorna – 1 e errno for definido como EILSEQ.
Comentários
O wctomb função converte seu wchar argumento para os caracteres multibyte correspondente e armazena o resultado no mbchar.Você pode chamar a função a partir de qualquer ponto em qualquer programa.wctombusa a localidade atual para qualquer comportamento depende da localidade; _wctomb_lé idêntico ao wctomb , exceto que ele usa a localidade passada em vez disso.Para obter mais informações, consulte Localidade.
wctombvalida os seus parâmetros.Se mbchar é NULL, o manipulador de parâmetro inválido é invocado, conforme descrito em Validação de parâmetro.Se a execução terá permissão para continuar, errno for definido como EINVAL e a função retornará -1.
Requisitos
Rotina |
Cabeçalho necessário |
---|---|
wctomb |
<stdlib.h> |
Para obter informações adicionais de compatibilidade, consulte compatibilidade na introdução.
Exemplo
Este programa ilustra o comportamento da função wctomb.
// crt_wctomb.cpp
// compile with: /W3
#include <stdio.h>
#include <stdlib.h>
int main( void )
{
int i;
wchar_t wc = L'a';
char *pmb = (char *)malloc( MB_CUR_MAX );
printf( "Convert a wide character:\n" );
i = wctomb( pmb, wc ); // C4996
// Note: wctomb is deprecated; consider using wctomb_s
printf( " Characters converted: %u\n", i );
printf( " Multibyte character: %.1s\n\n", pmb );
}
Equivalência do .NET Framework
Não aplicável. Para chamar a função c padrão, use PInvoke. Para obter mais informações, consulte Exemplos de invocação de plataforma.