Share via


_mbbtype, _mbbtype_l

根據上一個位元組傳回位元組類型。

重要

這個 API 不能用於在 Windows 執行階段中執行的應用程式。 如需詳細資訊,請參閱 CRT functions not supported in Universal Windows Platform apps (通用 Windows 平台應用程式中不支援的 CRT 函式)。

語法

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

參數

c
要測試的字元。

type
要測試的位元組類型。

locale
要使用的地區設定。

傳回值

_mbbtype 傳回字串中的位元組類型。 這項決策是即時線上的,如提供控制項測試條件的 type 值所指定。 type 是該字串中前一個位元組的類型。 下表中的資訊清單常數定義於 Mbctype.h。

type 的值 _mbbtype 測試 傳回值 c
1 以外的任何值 有效的單一位元組或前導位元 _MBC_SINGLE (0) 單一位元組 (0x20 - 0x7E, 0xA1 - 0xDF)
1 以外的任何值 有效的單一位元組或前導位元 _MBC_LEAD (1) 多位元組字元的前置位元組 (0x81 - 0x9F, 0xE0 - 0xFC)
1 以外的任何值 有效的單一位元組或前導位元 _MBC_ILLEGAL

(-1)
不正確字元 (0x20 以外的任何值 - 0x7E、 0xA1 - 0xDF、 0x81 - 0x9F、 0xE0 - 0xFC
1 有效的後隨位元組 _MBC_TRAIL (2) 多位元組字元的尾端位元組 (0x40 - 0x7E, 0x80 - 0xFC)
1 有效的後隨位元組 _MBC_ILLEGAL

(-1)
不正確字元 (0x20 以外的任何值 - 0x7E、 0xA1 - 0xDF、 0x81 - 0x9F、 0xE0 - 0xFC

備註

_mbbtype 函式會判斷多位元組字元中的位元組類型。 如果 type 的值為 1 以外的任何值,則 _mbbtype 會針對多位元組字元之有效的單一位元組或前導位元組進行測試。 如果 type 的值為 1,則 _mbbtype 會針對多位元組字元之有效的後隨位元組進行測試。

輸出值會受到 LC_CTYPE 地區設定之類別設定的影響。 如需詳細資訊,請參閱 setlocale_wsetlocale。 此 _mbbtype 函式的版本會針對此地區設定相依行為使用目前的地區設定; _mbbtype_l 版本相同,不同之處在于它會改用傳入的地區設定參數。 如需詳細資訊,請參閱 Locale

在舊版中,_mbbtype 名為 chkctype。 對於新的程式碼,請改用 _mbbtype

根據預設,此函式的全域狀態會限定于應用程式。 若要變更此行為,請參閱 CRT 中的全域狀態。

需求

常式 必要的標頭 選擇性標頭
_mbbtype <mbstring.h> <mbctype.h > *
_mbbtype_l <mbstring.h> <mbctype.h > *

* 用於做為傳回值的資訊清單常數定義。

如需相容性詳細資訊,請參閱相容性

另請參閱

位元組分類