wctomb, _wctomb_l
Converta um caractere de largo de caracteres multibyte correspondente.Versões mais seguras dessas funções estão disponível; consulte 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 caractere de multibyte.wchar
Um caractere largo.
Valor de retorno
If wctomb Converte caracteres largos em um caractere de vários bytes, ela retorna o número de bytes (que nunca é maior que MB_CUR_MAX) no caractere largo. If wchar é o caractere nulo de caractere largo (L '\0') wctomb Retorna 1. Se o destino ponteiro mbchar for nulo, wctomb Retorna 0. Se a conversão não for possível na localidade corrente, wctomb Retorna – 1 e errno é conjunto para EILSEQ.
Comentários
The wctomb função converte seu wchar argumento para os caractere multibyte correspondente e armazena o resultado no mbchar. Você pode chamar a função de qualquer local em qualquer programa.wctomb usa a localidade corrente para qualquer comportamento dependente de localidade; _wctomb_l é idêntico ao wctomb exceto que ele usa a localidade do passado em vez disso. For more information, see Localidade.
wctomb valida os parâmetros. If mbchar é NULL, o manipulador de parâmetro inválido é chamado, conforme descrito em Validação de parâmetro. Se a execução for permitida para continuar, errno é conjunto para EINVAL e a função retornará -1.
Requisitos
Rotina |
Cabeçalho necessário |
---|---|
wctomb |
<stdlib.h> |
Para obter informações adicionais 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 );
}
Convert a wide character: Characters converted: 1 Multibyte character: a
Equivalente do NET Framework
Não aplicável. Para telefonar a função C padrão, use PInvoke. Para obter mais informações, consulte Exemplos de invocação de plataforma.