Função de biblioteca C - mbtowc ()

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.

???