Udostępnij za pośrednictwem


_stricoll, _wcsicoll, _mbsicoll, _stricoll_l, _wcsicoll_l, _mbsicoll_l

Porównuje ciągi przy użyciu informacji specyficznych dla danej lokalizacji.

Ważna uwagaWażne

_mbsicoll i _mbsicoll_l nie można używać w aplikacjach korzystających ze środowiska wykonawczego systemu Windows.Aby uzyskać więcej informacji, zobacz Funkcje CRT nieobsługiwane przez /ZW.

int _stricoll(
   const char *string1,
   const char *string2 
);
int _wcsicoll(
   const wchar_t *string1,
   const wchar_t *string2 
);
int _mbsicoll(
   const unsigned char *string1,
   const unsigned char *string2 
);
int _stricoll_l(
   const char *string1,
   const char *string2,
   _locale_t locale
);
int _wcsicoll_l(
   const wchar_t *string1,
   const wchar_t *string2,
   _locale_t locale
);
int _mbsicoll_l(
   const unsigned char *string1,
   const unsigned char *string2,
   _locale_t locale
);

Parametry

  • string1, string2
    Ciągi zakończone wartością null do porównania.

  • locale
    Ustawienia regionalne do użycia.

Wartość zwracana

Każda z tych funkcji zwraca wartość wskazującą, związek string1 do string2*,* w następujący sposób.

Wartość zwrócona

Relacja ciąg1 do ciąg2

< 0

string1 mniejszy niż string2

0

string1 identyczne z string2

> 0

string1 większy niż string2

_NLSCMPERROR

Wystąpił błąd.

Każda z tych funkcji zwraca _NLSCMPERROR.Aby użyć _NLSCMPERROR, włącz STRING.H lub MBSTRING.H._wcsicoll może się nie powieść, jeśli string1 lub string2 zawiera kody znaków dwubajtowych spoza domeny sekwencji sortowania.Gdy wystąpi błąd, _wcsicoll może ustawić errno jako EINVAL.Aby sprawdzić pod kątem wystąpienia błędu w wywołaniu _wcsicoll, ustaw errno na wartość 0, a następnie sprawdź errno po wywołaniu _wcsicoll.

Uwagi

Każda z tych funkcji wykonuje porównania bez uwzględniania wielkości liter string1 i string2 zgodnie z aktualnie używaną stroną kodową.Te funkcje powinny być używane tylko wtedy, gdy istnieje różnica pomiędzy kolejnością zestawu znaków i kolejnością znaków leksykograficznych w bieżącej stronie kodowej, a różnica ta ma znaczenie dla porównania ciągu.

_stricmp różni się od _stricoll, tak, że na porównanie _stricmp wpływa LC_CTYPE, podczas gdy porównanie _stricoll jest zgodne z kategoriami LC_CTYPE i LC_COLLATE ustawień regionalnych.Aby uzyskać więcej informacji na temat kategorii LC_COLLATE, zobacz setlocale i Kategorie ustawień regionalnych.Wersje tych funkcji, które nie mają przyrostka _l używają bieżących ustawień regionalnych; wersje, które mają przyrostek _l są identyczne, z tą różnicą, że w zamian korzystają z przekazanego parametru ustawień regionalnych.Aby uzyskać więcej informacji, zobacz Regionalne.

Wszystkie te funkcje sprawdzają poprawność swoich parametrów.Jeśli string1 lub string2 są NULL wskaźnikami, zostanie wywołana procedura obsługi nieprawidłowego parametru, zgodnie z opisem w Sprawdzanie poprawności parametru.Jeśli wykonanie może być kontynuowane, te funkcje zwracają _NLSCMPERROR i ustawiają errno na EINVAL.

Rutynowe mapowania zwykłego tekstu

Procedura Tchar.h

_UNICODE & _MBCS nie zdefiniowano

_MBCS zdefiniowano

_UNICODE zdefiniowany

_tcsicoll

_stricoll

_mbsicoll

_wcsicoll

Wymagania

Procedura

Wymagany nagłówek

_stricoll, _stricoll_l

<Ciąg>

_wcsicoll, _wcsicoll_l

<wchar.h>, <string.h>

_mbsicoll, _mbsicoll_l

<mbCiąg.h>

Dodatkowe informacje o zgodności – zobacz: Zgodność.

Odpowiednik w programie .NET Framework

Porównaj system ciągów

Zobacz też

Informacje

Regionalne

Manipulowanie ciągami (CRT)

strcoll — Funkcje

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