_strnicoll, _wcsnicoll, _mbsnicoll, _strnicoll_l, _wcsnicoll_l, _mbsnicoll_l

Сравнивать строки с использованием данные для конкретного языкового стандарта.

Важное примечаниеВажно

_mbsnicoll и _mbsnicoll_l нельзя использовать в приложениях, выполняемых в среды выполнения Windows.Дополнительные сведения см. в разделе Функции CRT не поддерживаются при /ZW.

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
);

Параметры

  • string1, string2
    Объединения завершенных строки для сравнения

  • count
    Число символов для сравнения

  • locale
    Используемый языковой стандарт.

Возвращаемое значение

Каждая из этих функций возвращает значение, указывающее связь подстрок string1 и string2 следующим образом.

Возвращаемое значение

Связь string1 и string2

< 0

string1 меньше чем string2.

0

string1 идентична string2.

> 0

string1 больше чем string2.

Каждая из этих функций возвращает _NLSCMPERROR.Чтобы использовать _NLSCMPERROR, включить или STRING.H или MBSTRING.H._wcsnicoll может завершиться неудачей, если string1 или string2 содержат коды юникода вне домена collating последовательности.При возникновении ошибки, _wcsnicoll можно задать для errno значение EINVAL.Для проверки ошибок при вызове _wcsnicoll, присвойте параметру errno значение 0, а затем проверьте errno после вызова метода _wcsnicoll**.**

Заметки

Каждая из этих функций выполняет сравнения без учета регистра первых символов count в string1 и string2 согласно кодовую страницу.Эти функции следует использовать только в том случае, когда различие между порядком кодировки и лексикографическим порядком символов в кодовой странице и данного отличия представляет интерес для сравнения строк.Версии этих функций без суффикса _l используют текущий языковой стандарт и кодовую страницу.Версии с суффиксом _l идентичны за исключением того, что они используют языковой стандарт, вместо этого в.Для получения дополнительной информации см. Языковой стандарт.

Все эти функции производят проверку своих параметров.Если string1 или string2 указатель или если число больше, чем INT_MAX, то обработчик вызывается недопустимого параметра, как описано в разделе Проверка параметров.Если среда выполнения может продолжить, эти функции возвращают _NLSCMPERROR и errno задается значение EINVAL**.**

Универсальное текстовое сопоставление функций

Функция TCHAR.H

неопределенные _UNICODE & _MBCS

определенные _MBCS

Определение _UNICODE

_tcsncicoll

_strnicoll

_mbsnbicoll

_wcsnicoll

_tcsnicoll

_strnicoll

_mbsnbicoll

_wcsnicoll

_tcsnicoll_l

_strnicoll_l

_mbsnbicoll_l

_wcsnicoll_l

Требования

Функция

Требуемый заголовок

_strnicoll, _strnicoll_l

<string.h>

_wcsnicoll, _wcsnicoll_l

<wchar.h> или <string.h>

_mbsnicoll, _mbsnicoll_l

<mbstring.h>

Дополнительные сведения о совместимости см. в разделе Совместимость во введении.

Эквивалент в .NET Framework

System::String::Compare

См. также

Ссылки

Языковой стандарт

Управление строками (CRT)

функции strcoll

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