Partilhar via


_mbsbtype, _mbsbtype_l

Retorna o tipo de byte em uma cadeia de caracteres.

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 _mbsbtype(
   const unsigned char *mbstr,
   size_t count
);
int _mbsbtype_l(
   const unsigned char *mbstr,
   size_t count,
   _locale_t locale
);

Parâmetros

mbstr
Endereço de uma sequência de caracteres multibyte.

count
Deslocamento do byte do início da cadeia de caracteres.

locale
Localidade a usar.

Retornar valor

_mbsbtype e _mbsbtype_l retorna um valor inteiro indicando o resultado do teste no byte especificado. As constantes de manifesto na tabela a seguir são definidas em Mbctype.h.

Retornar valor Tipo de byte
_MBC_SINGLE (0) Caractere de um byte. Por exemplo, na página de código 932, _mbsbtype retorna 0 se o byte especificado estiver dentro do intervalo 0x20 - 0x7E ou 0xA1 - 0xDF.
_MBC_LEAD (1) Byte inicial do caractere multibyte. Por exemplo, na página de código 932, _mbsbtype retorna 1 se o byte especificado estiver dentro do intervalo 0x81 - 0x9F ou 0xE0 - 0xFC.
_MBC_TRAIL (2) Byte à direita do caractere multibyte. Por exemplo, na página de código 932, _mbsbtype retorna 2 se o byte especificado estiver dentro do intervalo 0x40 - 0x7E ou 0x80 - 0xFC.
_MBC_ILLEGAL (-1) NULL cadeia de caracteres, caractere inválido ou byte nulo encontrado antes do byte no deslocamento count em mbstr.

Comentários

A função _mbsbtype determina o tipo de um byte em uma cadeia de caracteres multibyte. A função examina somente os bytes no deslocamento count no mbstr, ignorando os caracteres inválidos antes do byte especificado.

O valor de saída é afetado pela configuração da categoria LC_CTYPE da localidade. Para obter mais informações, consulte setlocale. A versão dessa função sem o sufixo _l usa a localidade atual desse comportamento dependente da localidade. A versão com o sufixo _l é idêntica, exceto por usar o parâmetro de localidade passado em seu lugar. Para obter mais informações, consulte Localidade.

Se a cadeia de caracteres de entrada for NULL, o manipulador de parâmetros inválido será chamado, conforme descrito em Validação de parâmetro. Se a execução tiver permissão para continuar, errno será definido como EINVAL e a função retornará _MBC_ILLEGAL.

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

Requisitos

Rotina Cabeçalho necessário Cabeçalho opcional
_mbsbtype <mbstring.h> <mbctype.h>*
_mbsbtype_l <mbstring.h> <mbctype.h>*

*Para constantes de manifesto usadas como valores retornados.

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

Confira também

Classificação de bytes