Sdílet prostřednictvím


Funkce strcoll

Každý strcoll a wcscoll funkce porovná dva řetězce podle LC_COLLATE kategorie nastavení národního prostředí znakové stránky právě používán.Každý _mbscoll funkce porovná dva řetězce podle vícebajtové znakové stránky právě používán.Použití coll funkcí pro porovnávání řetězců, pokud je rozdíl mezi pořadí sady znaků a pořadí znaků lexicographic v aktuální znakové stránce a tento rozdíl je v zájmu pro porovnání.Použijte odpovídající cmp pouze pro testování funkcí pro řetězce rovnosti.

Funkce strcoll

SBCS

Unicode

MBCS

Description

strcoll

wcscoll

_mbscoll

Kompletování dva řetězce

_stricoll

_wcsicoll

_mbsicoll

Kompletování dva řetězce (nerozlišuje malá a velká písmena)

_strncoll

_wcsncoll

_mbsncoll

Kompletování nejprve count dva řetězce znaků

_strnicoll

_wcsnicoll

_mbsnicoll

Kompletování nejprve count znaky dva řetězce (velká a malá písmena)

Poznámky

Tyto funkce verze jednobajtových znaků (SBCS) (strcoll, stricoll, _strncoll, a _strnicoll) porovnání string1 a string2 podle LC_COLLATE kategorie nastavení aktuální národní prostředí.Tyto funkce se liší od odpovídajících strcmp funkce, které strcoll funkce používá informace kódové stránky národního prostředí, které poskytuje pořadí řazení.Pro porovnávání řetězců v národních prostředích, ve kterých pořadí znaků lexicographic se liší, a pořadí sada znaků strcoll funkce by měly používat spíše než odpovídající strcmp funkcí.Další informace o LC_COLLATE, viz setlocale.

U některých kódových stránek a odpovídající znakové sady pořadí znaků ve znakové sadě lišit od pořadí lexicographic znaků.V národním prostředí "C", není případ: pořadí znaků ve znakové sadě ASCII je stejné jako lexicographic znaků.Však v určitých Evropské znakové stránky, například znak "a" (hodnota 0x61) předchází znak ä' (0xE4) v znak hodnotu, ale znak ä' předchází znak 'a' lexicographically.Provést porovnání lexicographic v takové instance, použijte strcoll namísto strcmp.Můžete také použít strxfrm na původní řetězce pomocí strcmp na výsledné řetězce.

strcoll, stricoll, _strncoll, a _strnicoll automaticky zpracovat řetězec vícebajtových znaků podle národního prostředí znakovou stránku právě používán, stejně jako jejich protějšky wide znak (Unicode).Verze vícebajtových znaků (MBCS) tyto funkce kompletování však řetězce na základě znaků podle vícebajtové znakové stránky právě používán.

Protože coll funkce kompletování řetězců pro porovnání, lexicographically, že cmp funkce jednoduše test na řetězec rovnosti coll funkce jsou mnohem pomalejší než odpovídající cmp verze.Proto coll funkce měli používat pouze v případě, že existuje rozdíl mezi pořadí sady znaků a pořadí znaků lexicographic v aktuální znakové stránce a tento rozdíl je v zájmu pro porovnání řetězců.

Viz také

Referenční dokumentace

Národní prostředí

Manipulaci s řetězci (CRT)

localeconv

_mbsnbcoll, _mbsnbcoll_l, _mbsnbicoll, _mbsnbicoll_l

setlocale _wsetlocale

strcmp, wcscmp, _mbscmp

strncmp, wcsncmp, _mbsncmp, _mbsncmp_l

_strnicmp, _wcsnicmp, _mbsnicmp, _strnicmp_l, _wcsnicmp_l, _mbsnicmp_l

strxfrm, wcsxfrm, _strxfrm_l, _wcsxfrm_l