Descrição
A função da biblioteca C int mbtowc(whcar_t *pwc, const char *str, size_t n) converte uma sequência multibyte em um caractere largo.
Declaração
A seguir está a declaração para a função mbtowc ().
int mbtowc(whcar_t *pwc, const char *str, size_t n)
Parâmetros
pwc - Este é o ponteiro para um objeto do tipo wchar_t.
str - Este é o ponteiro para o primeiro byte de um caractere multibyte.
n - Este é o número máximo de bytes a serem verificados para comprimento de caracteres.
Valor de retorno
Se str não é NULL, a função mbtowc () retorna o número de bytes consumidos começando em str, ou 0 se s aponta para um byte nulo ou -1 em caso de falha.
Se str for NULL, a função mbtowc () retornará diferente de zero se a codificação tiver estado de mudança não trivial ou zero se a codificação não tiver estado.
Exemplo
O exemplo a seguir mostra o uso da função mbtowc ().
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main () {
char *str = "This is tutorialspoint.com";
wchar_t mb[100];
int len;
len = mblen(NULL, MB_CUR_MAX);
mbtowc(mb, str, len*strlen(str) );
wprintf(L"%ls \n", mb );
return(0);
}
Vamos compilar e executar o programa acima que produzirá o seguinte resultado, que será em multibyte, uma espécie de saída binária.
???