Compartilhar via


_mbbtype, _mbbtype_l

Retorna o tipo de byte, com base no byte anterior.

Importante

Esta API não pode ser usada em aplicativos executados no Windows Runtime. Para obter mais informações, confira Funções do CRT sem suporte em aplicativos da Plataforma Universal do Windows.

Sintaxe

int _mbbtype(
   unsigned char c,
   int type
);
int _mbbtype_l(
   unsigned char c,
   int type,
   _locale_t locale
);

Parâmetros

c
O caractere a ser testado.

type
O tipo de byte para o qual testar.

locale
A localidade a ser usada.

Valor retornado

O _mbbtype retorna o tipo de byte em uma cadeia de caracteres. Essa decisão é contextual, conforme especificado pelo valor de type, que fornece a condição de teste do controle. type é o tipo do byte anterior na cadeia de caracteres. As constantes de manifesto na tabela a seguir são definidas em Mbctype.h.

Valor de type O _mbbtype testa para Valor retornado c
Qualquer valor exceto 1 Byte único ou byte inicial válido _MBC_SINGLE (0) Byte único (0x20 - 0x7E, 0xA1 - 0xDF)
Qualquer valor exceto 1 Byte único ou byte inicial válido _MBC_LEAD (1) Byte inicial do caractere multibyte (0x81 – 0x9F, 0xE0 – 0xFC)
Qualquer valor exceto 1 Byte único ou byte inicial válido _MBC_ILLEGAL (-1) Caractere inválido: não único ou principal (0x00 - 0x1F, 0x7F, 0x80, 0xA0, 0xFD, 0xFE, 0xFF)
1 Byte final válido _MBC_TRAIL (2) Byte final de caractere multibyte (0x40 – 0x7E, 0x80 – 0xFC)
1 Byte final válido _MBC_ILLEGAL (-1) Caractere inválido: não à direita (0x00 - 0x3F, 0x7F, 0xFD, 0xFE, 0xFF)

Comentários

A função _mbbtype determina o tipo de um byte em um caractere multibyte. Se o valor de type for qualquer valor exceto 1, _mbbtype testará para um byte único ou byte inicial de um caractere multibyte. Se o valor de type for 1, _mbbtype testará para um byte final válido de um caractere multibyte.

O valor de saída é afetado pela configuração da categoria LC_CTYPE da localidade. Para obter mais informações, consulte setlocalee _wsetlocale. A _mbbtype versão dessa função usa a localidade atual para esse comportamento dependente de localidade; a _mbbtype_l versão é idêntica, exceto que ela usa o parâmetro locale que é passado. Para obter mais informações, consulte Localidade.

Em versões anteriores, _mbbtype era chamado chkctype. Para códigos novos, use _mbbtype.

Por padrão, o estado global dessa função tem como escopo o aplicativo. Para alterar esse comportamento, confira Estado global no CRT.

Requisitos

Rotina Cabeçalho necessário Cabeçalho opcional
_mbbtype <mbstring.h> <mbctype.h>*
_mbbtype_l <mbstring.h> <mbctype.h>*

* Para obter definições de constantes de manifesto que são usadas como valores retornados.

Para obter informações sobre compatibilidade, consulte Compatibilidade.

Confira também

Classificação de bytes