Udostępnij za pośrednictwem


_strnicoll, , _wcsnicoll, _mbsnicoll, _strnicoll_l, , _wcsnicoll_l_mbsnicoll_l

Porównuje ciągi przy użyciu informacji specyficznych dla ustawień regionalnych.

Ważne

_mbsnicollnie można jej _mbsnicoll_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 _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
);

Parametry

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

count
Liczba znaków do porównania

locale
Ustawienia regionalne do użycia.

Wartość zwracana

Każda z tych funkcji zwraca wartość wskazującą relację podciągów string1 i string2, w następujący sposób.

Wartość zwracana Relacja ciągu 1 do ciągu2
< 0 string1 mniejsze niż string2
0 string1 identyczne z string2
> 0 string1 większe niż string2

Każda z tych funkcji zwraca wartość _NLSCMPERROR. Aby użyć polecenia _NLSCMPERROR, dołącz dowolny ciąg. H lub MBSTRING.H. _wcsnicoll może zakończyć się niepowodzeniem, jeśli kod string1 string2 lub zawiera kody szerokiego znaku poza domeną sekwencji sortowania. W przypadku wystąpienia _wcsnicoll błędu może być ustawiona wartość errno EINVAL. Aby sprawdzić błąd wywołania _wcsnicollmetody , ustaw wartość errno 0, a następnie sprawdź errno po wywołaniu metody _wcsnicoll.

Uwagi

Każda z tych funkcji wykonuje bez uwzględniania wielkości liter porównanie pierwszych count znaków w string1 obiekcie i string2 zgodnie ze stroną kodową. 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 stronie kodowej, a ta różnica jest interesująca dla porównania ciągów. Wersje tych funkcji bez sufiksu _l używają bieżących ustawień regionalnych i strony kodowej. Wersje z sufiksem _l są identyczne, z tą różnicą, że używają ustawień regionalnych przekazanych w zamian. Aby uzyskać więcej informacji, zobacz Ustawienia regionalne.

Wszystkie te funkcje weryfikują swoje parametry. Jeśli element string1 lub string2 jest wskaźnikiem o wartości null lub jeśli liczba jest większa 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.

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
_tcsncicoll _strnicoll _mbsnbicoll _wcsnicoll
_tcsnicoll _strnicoll _mbsnbicoll _wcsnicoll
_tcsnicoll_l _strnicoll_l _mbsnbicoll_l _wcsnicoll_l

Wymagania

Procedura Wymagany nagłówek
_strnicoll, _strnicoll_l <string.h>
_wcsnicoll, _wcsnicoll_l <wchar.h> lub <string.h>
_mbsnicoll, _mbsnicoll_l <mbstring.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