Uwaga
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Porównuje ciągi przy użyciu bieżących ustawień regionalnych lub określonej LC_COLLATE
kategorii stanu konwersji.
Ważne
_mbscoll
nie można jej _mbscoll_l
używać w aplikacjach wykonywanych w środowisko wykonawcze systemu Windows. Aby uzyskać więcej informacji, zobacz Funkcje CRT nieobsługiwane w aplikacjach platforma uniwersalna systemu Windows.
Składnia
int strcoll(
const char *string1,
const char *string2
);
int wcscoll(
const wchar_t *string1,
const wchar_t *string2
);
int _mbscoll(
const unsigned char *string1,
const unsigned char *string2
);
int _strcoll_l(
const char *string1,
const char *string2,
_locale_t locale
);
int wcscoll_l(
const wchar_t *string1,
const wchar_t *string2,
_locale_t locale
);
int _mbscoll_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ą relację z string2
elementem string1
w następujący sposób.
Wartość zwracana | Relacja z string1 string2 |
---|---|
< 0 | string1 mniejsze niż string2 |
0 | string1 identyczne z string2 |
> 0 | string1 większe niż string2 |
Każda z tych funkcji zwraca _NLSCMPERROR
błąd. Aby użyć polecenia _NLSCMPERROR
, dołącz dowolny ciąg. H lub MBSTRING.H. wcscoll
może zakończyć się niepowodzeniem, jeśli element string1
lub string2
zawiera NULL
kody szerokiego znaku poza domeną sekwencji sortowania. W przypadku wystąpienia wcscoll
błędu może być ustawiona wartość errno
EINVAL
. Aby sprawdzić błąd wywołania wcscoll
metody , ustaw wartość errno
0, a następnie sprawdź errno
po wywołaniu metody wcscoll
.
Uwagi
Każda z tych funkcji wykonuje porównanie string1
z uwzględnieniem wielkości liter i string2
zgodnie ze stroną kodową, która jest obecnie używana. Te funkcje powinny być używane tylko wtedy, gdy istnieje różnica między kolejnością zestawu znaków a kolejnością znaków leksykograficznych na bieżącej stronie kodowej, a ta różnica jest interesująca dla porównania ciągów.
Wszystkie te funkcje weryfikują swoje parametry. Jeśli element string1
lub string2
jest wskaźnikiem o wartości null lub jest count
większy niż INT_MAX
, wywoływana jest nieprawidłowa procedura obsługi parametrów, zgodnie z opisem w temacie Weryfikacja parametru . Jeśli wykonanie jest dozwolone do kontynuowania, te funkcje zwracają _NLSCMPERROR
i ustawiają wartość errno
EINVAL
.
Porównanie dwóch ciągów jest operacją zależną od ustawień regionalnych, ponieważ poszczególne ustawienia regionalne mają różne reguły porządkowania znaków. Wersje tych funkcji bez _l
sufiksu używają ustawień regionalnych bieżącego wątku dla tego zachowania zależnego od ustawień regionalnych; wersje z _l
sufiksem są identyczne z odpowiednią funkcją bez sufiksu, z tą różnicą, że używają ustawień regionalnych przekazanych jako parametr zamiast bieżących ustawień regionalnych. Aby uzyskać więcej informacji, zobacz Ustawienia regionalne.
Domyślnie stan globalny tej funkcji jest zakresem aplikacji. Aby zmienić to zachowanie, zobacz Stan globalny w CRT.
Mapowania procedur tekstu ogólnego
Procedura TCHAR.H | _UNICODE i _MBCS niezdefiniowane |
_MBCS zdefiniowany |
_UNICODE zdefiniowany |
---|---|---|---|
_tcscoll |
strcoll |
_mbscoll |
wcscoll |
Wymagania
Procedura | Wymagany nagłówek |
---|---|
strcoll |
<string.h> |
wcscoll |
<wchar.h>, <string.h> |
_mbscoll , _mbscoll_l |
<mbstring.h> |
_strcoll_l |
<string.h> |
_wcscoll_l |
<wchar.h>, <string.h> |
Aby uzyskać więcej informacji o zgodności, zobacz Zgodność.
Zobacz też
ustawienia regionalne
Manipulowanie ciągami
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