strcoll işlevleri
Her bir strcoll ve wcscoll işlevleri göre iki dizesini karşılaştırır LC_COLLATE kategori ayarı yerel kod sayfası şu anda kullanımda. Her bir _mbscoll işlevleri şu anda kullanımda çok baytlı kod sayfasına göre iki dizesini karşılaştırır. Use coll geçerli kod sayfası karakter kümesi sipariş lexicographic karakter sırasını arasındaki fark ve karşılaştırma için ilgi bu fark olduğunda dize karşılaştırmaları için İşlevler. Buna karşılık gelen kullanmak cmp dize eşitlik yalnızca sınamak için işlevleri.
strcoll işlevleri
SBCS |
Unicode |
MBCS |
Description |
---|---|---|---|
İki dizeyi harmanlamak |
|||
İki dizeyi (büyük/küçük harf duyarlı) harmanlamak |
|||
İlk harmanlama count iki dizelerinin karakterler |
|||
İlk harmanlama count (büyük küçük harf duyarsız) iki dizelerinin karakterler |
Notlar
Bu işlevler tek baytlık karakter (sbcs) sürümleri (strcoll, stricoll, _strncoll, ve _strnicoll) karşılaştırmak string1 ve string2 göre LC_COLLATE kategori geçerli yerel ayarı. Karşılık gelen gelen bu işlevler farklı strcmp işlevleri, strcoll harmanlama sıraları sağlar yerel kod sayfası bilgileri işlevlerini kullanın. Dize Karşılaştırmasında karakter sırasını ayarlayın ve lexicographic karakter sırasını farklı, yerel ayarlar için strcoll yerine ilgili işlevleri kullanılmalıdır strcmp işlevleri. Daha fazla bilgi için LC_COLLATE, bkz: setlocale.
Bazı kod sayfaları ve karşılık gelen karakter kümeleri için karakter kümesindeki karakterlerin sırasını lexicographic karakter siparişten farklı olabilir. "c" yerel ayarı bu doğru değildir: ASCII karakter kümesinde karakter sırasını karakterleri lexicographic sırası ile aynıdır. Ancak, bazı Avrupa kod sayfaları, örneğin, karakter 'a' (değer 0x61) 'ä' (0xE4) karakter değeri, karakter karakter önündeki 'ä' önündeki karakteri 'a' lexicographically. Böyle bir örneği lexicographic bir karşılaştırma yapmak için strcoll yerine strcmp. Alternatif olarak, kullanabileceğiniz strxfrm sonra özgün dizeleri kullanmak strcmp oluşan dizeler.
strcoll, stricoll, _strncoll, ve _strnicoll wide (Unicode) karakter'dekiler gibi çok baytlı karakter dizeleri göre bölgesel kod sayfasına kullanılmakta, otomatik olarak işleyecek. Bu işlevler, çok baytlı karakterli (mbcs) sürümleri ancak şu anda kullanımda çok baytlı kod sayfasına göre karakter temelinde dizeleri harmanlamak.
Çünkü coll oysa işlevler harmanlamak dizeleri karşılaştırma, lexicographically için cmp işlevler yalnızca dize eşitlik için test coll işlevlerdir karşılık gelen daha çok daha yavaş cmp sürümleri. Bu nedenle, coll işlevler yalnızca geçerli kod sayfası karakter kümesi sipariş lexicographic karakter sırasını arasındaki fark vardır ve bu fark dize karşılaştırma için faiz olduğunda kullanılmalıdır.
Ayrıca bkz.
Başvuru
_mbsnbcoll, _mbsnbcoll_l, _mbsnbicoll, _mbsnbicoll_l
strncmp, wcsncmp, _mbsncmp, _mbsncmp_l
_strnicmp, _wcsnicmp, _mbsnicmp, _strnicmp_l, _wcsnicmp_l, _mbsnicmp_l