共用方式為


_strnicoll、_wcsnicoll、_mbsnicoll、_strnicoll_l、_wcsnicoll_l、_mbsnicoll_l

使用地區設定特定的資訊來比較字串。

重要

_mbsnicoll 和 _mbsnicoll_l不能用於在 Windows 執行階段執行的應用程式。如需詳細資訊,請參閱 /ZW 不支援 CRT 函式

int _strnicoll(
   const char *string1,
   const char *string2,
   size_t count 
);
int _wcsnicoll(
   const wchar_t *string1,
   const wchar_t *string2 ,
   size_t count 
);
int _mbsnicoll(
   const unsigned char *string1,
   const unsigned char *string2,
   size_t count 
);
int _strnicoll_l(
   const char *string1,
   const char *string2,
   size_t count,
   _locale_t locale
);
int _wcsnicoll_l(
   const wchar_t *string1,
   const wchar_t *string2 ,
   size_t count,
   _locale_t locale
);
int _mbsnicoll_l(
   const unsigned char *string1,
   const unsigned char *string2,
   size_t count,
   _locale_t locale
);

參數

  • string1, string2
    以 Null 結束的待比較字串。

  • count
    要比較的字元數。

  • locale
    使用的地區設定。

傳回值

這些函式都會傳回暗指 string1 和 string2的子關聯性的值*,* 如下所示。

傳回值

string1 與 string2 的關係

< 0

string1 小於 string2

0

string1 與 string2 相同

> 0

string1 大於 string2

這些函式都會傳回 _NLSCMPERROR。 若要使用 _NLSCMPERROR,請 include STRING.H 或 MBSTRING.H。 如果 string1 或 string2 包含在定序序列的網域之外之寬字元程式碼,_wcsnicoll 可能會失敗。 發生錯誤時, _wcsnicoll 會將 errno 設定為 EINVAL。 要檢查呼叫 _wcsnicoll的錯誤,將errno 設為 0 並檢查 errno 在呼叫_wcsnicoll之後**.**

備註

這些函式都會根據字碼頁在 string1 和 string2 執行的第一個 count 字元的不區分大小寫的比較。 這些函式應該只有在字碼頁上,字元集順序和字典字元順序存在差異,且這些差異影響到字串比較時,才會使用。 這些函式版本沒有 _l 尾碼來使用目前的地區設定和字碼頁。 以_l為字尾的版本也相同,不同處為使用傳遞過來的地區設定。 如需詳細資訊,請參閱地區設定

這些函式全都會驗證它們的參數。 如果 string1 或 string2 為 null 指標,或如果 INT_MAX 大於 ,無效的參數處理常式會被叫用,如 參數驗證 中所述。 如果允許繼續執行,這些函式會傳回 _NLSCMPERROR,並將 errno 設為 EINVAL**.**。

一般文字常式對應

TCHAR.H 常式

未定義 _UNICODE & _MBCS

已定義 _MBCS

已定義 _UNICODE

_tcsncicoll

_strnicoll

_mbsnbicoll

_wcsnicoll

_tcsnicoll

_strnicoll

_mbsnbicoll

_wcsnicoll

_tcsnicoll_l

_strnicoll_l

_mbsnbicoll_l

_wcsnicoll_l

需求

常式

必要的標頭

_strnicoll, _strnicoll_l

<string.h>

_wcsnicoll, _wcsnicoll_l

<wchar.h> 或 <string.h>

_mbsnicoll, _mbsnicoll_l

<mbstring.h>

如需其他相容性資訊,請參閱相容性

.NET Framework 對等用法

System::String::Compare

請參閱

參考

地區設定

字串操作 (CRT)

strcoll 函式

localeconv

_mbsnbcoll、_mbsnbcoll_l、_mbsnbicoll、_mbsnbicoll_l

setlocale、_wsetlocale

strcmp、wcscmp、_mbscmp

_stricmp、_wcsicmp、_mbsicmp、_stricmp_l、_wcsicmp_l、_mbsicmp_l

strncmp、wcsncmp、_mbsncmp、_mbsncmp_l

_strnicmp、_wcsnicmp、_mbsnicmp、_strnicmp_l、_wcsnicmp_l、_mbsnicmp_l

strxfrm、wcsxfrm、_strxfrm_l、_wcsxfrm_l