_mbsnbcoll、 _mbsnbcoll_l、 _mbsnbicoll、 _mbsnbicoll_l
使用多位元組字碼頁資訊,比較 n 的兩個位元組多位元組字元字串。
![]() |
---|
這個 API 不能用於 Windows 執行階段執行的應用程式。如需詳細資訊,請參閱 CRT 函式不支援使用 /ZW。 |
int _mbsnbcoll(
const unsigned char *string1,
const unsigned char *string2,
size_t count
);
int _mbsnbcoll_l(
const unsigned char *string1,
const unsigned char *string2,
size_t count,
_locale_t locale
);
int _mbsnbicoll(
const unsigned char *string1,
const unsigned char *string2,
size_t count
);
int _mbsnbicoll_l(
const unsigned char *string1,
const unsigned char *string2,
size_t count,
_locale_t locale
);
參數
string1, string2
要比較的字串。count
要比較的位元組數目。locale
使用的地區設定。
傳回值
傳回表示 string1 和 string2的子關聯。
傳回值 |
描述 |
---|---|
< 0 |
string1 的子字串小於 string2 的子字串。 |
0 |
string1 中子字串與 string2 的子字串。 |
> 0 |
string1 的子字串大於 string2 的子字串。 |
如果 string1 或 string2 是 NULL 或 count 大於 INT_MAX,無效的參數叫用處理常式,如 參數驗證中所述。如果執行允許繼續執行,這些函式傳回 _NLSCMPERROR 並將 errno 設為 EINVAL。若要使用 _NLSCMPERROR,將 String.h 或 Mbstring.h。
備註
這些函式對應中,最多,在 string1 和 string2 的第一個 count 位元組並傳回表示發生 string1 的子字串和 string2的值之間的關聯性。如果在 string1 或 string2 子字串的最後一個位元組是前導位元組,它在比較不包含;這些函式會比較子字串完全字元。_mbsnbicoll 是 _mbsnbcoll的不區分大小寫的版本。與 _mbsnbcmp 和 _mbsnbicmp、 _mbsnbcoll 和 _mbsnbicoll ,根據多位元組指定表單的傳統的纂順序自動分頁的兩個多位元組字元字串正在使用中的 字碼頁 。
對於某些字碼頁和對應的字元集,字元順序字元集的可能與字典會不同。在「C」地區設定,這不成立:字元順序在 ASCII 字元集中相同字元的字、編輯纂順序。例如,然而,在某些歐洲字碼頁字元「a」(值 0x61) 以字元「ä」(值 0xE4) 在字元集,不過,字元「ä 之前」字一般地在字元「a」之前。由位元組要執行字串字典會比較這個執行個體,請使用 _mbsnbcoll 而非 _mbsnbcmp;若要只檢查字串是否相等,請使用 _mbsnbcmp。
因為 coll 函式 (以地自動分頁字串比較的,反之, cmp 函式來測試字串是否相等, coll 函式比對應的 cmp 版本慢。因此,應使用 coll 函式,才會在字元集順序時和字典會在目前字碼頁和這個差異之間的一個差異是比較的利益。
輸出值受地區設定的LC_CTYPE 分類設定所影響。如需詳細資訊,請參閱 setlocale 。這些函式沒有以 _l 後綴的版本在這些地區相依的行為上使用目前的地區設定,而以 _l 後綴版本除了它們會使用傳入的地區設定參數之外運作相同。如需詳細資訊,請參閱地區設定。
泛用文字常式對應
Tchar.h 常式 |
未定義的 _UNICODE 和 _MBCS |
已定義 _MBCS |
已定義 _UNICODE |
---|---|---|---|
_tcsncoll |
_mbsnbcoll |
||
_tcsncoll_l |
_strncoll、 _wcsncoll、 _mbsncoll、 _strncoll_l、 _wcsncoll_l、 _mbsncoll_l |
_mbsnbcoll_l |
|
_tcsnicoll |
_mbsnbicoll |
||
_tcsnicoll_l |
_mbsnbicoll_l |
需求
程序 |
必要的標頭檔 |
---|---|
_mbsnbcoll |
<mbstring.h> |
_mbsnbcoll_l |
<mbstring.h> |
_mbsnbicoll |
<mbstring.h> |
_mbsnbicoll_l |
<mbstring.h> |
如需更多關於相容性的資訊,請參閱入門介紹中的 相容性 (Compatibility) 。
請參閱
參考
strncmp、 wcsncmp、 _mbsncmp、 _mbsncmp_l
_strnicmp、 _wcsnicmp、 _mbsnicmp、 _strnicmp_l、 _wcsnicmp_l、 _mbsnicmp_l