_mbsnbicmp, _mbsnbicmp_l
Сравнивает n байтов двух строк многобайтовых символов и не учитывает регистр.
Важно!
Этот API нельзя использовать в приложениях, выполняемых в среде выполнения Windows.Дополнительные сведения см. в разделе Функции CRT, которые не поддерживаются с ключом /ZW.
int _mbsnbicmp( const unsigned char *string1, const unsigned char *string2, size_t count );
Параметры
string1, string2
Строки с завершающим нулем для сравнения.count
Число сравниваемых байтов.
Возвращаемое значение
Возвращаемое значение показывает связь между подстроками.
Возвращаемое значение |
Описание |
---|---|
< 0 |
Подстрока string1 меньше, чем подстрока string2. |
0 |
Подстрока string1 идентична подстроке string2. |
> 0 |
Подстрока string1 больше, чем подстрока string2. |
При ошибке _mbsnbcmp возвращает значение _NLSCMPERROR, которое определено в String.h и Mbstring.h.
Заметки
Функция _mbsnbicmp выполняет порядковое сравнение не более count первых байтов строк string1 и string2. Сравнение выполняется путем преобразования каждого символа в нижний регистр; _mbsnbcmp — версия _mbsnbicmp, учитывающая регистр. Сравнение заканчивается, если был достигнут завершающий нуль-символ в любой из строк до того, как были сравнены count симв. Если строки равны, когда завершающий нуль-символ достигается в любой из строк до того, как count симв. сравнены, более короткая строка считается меньшей.
Функция _mbsnbicmp аналогична _mbsnicmp за исключением того, что она сравнивает строки по байтам (до count байтов), а не по символам.
Две строки, содержащие символы, которые расположены между Z и a в таблице ASCII ("[", "\", "]", "^", "_" и "`"), сравниваются по-разному в зависимости от их регистра. Например, две строки ABCDE и ABCD^ сравниваются с одним результатом, если сравнение производится в нижнем регистре (abcde > abcd^), и с другим, если сравнение производится в верхнем регистре (ABCDE < ABCD^).
Функция _mbsnbicmp распознает последовательности многобайтовых символов в соответствии с текущей многобайтовой кодовой страницей. На нее не влияет текущий параметр языкового стандарта.
Если string1 или string2 является пустым указателем, функция _mbsnbicmp вызывает обработчик недопустимого параметра, как описано в разделе Проверка параметров. Если выполнение может быть продолжено, функция возвращает _NLSCMPERROR и устанавливает для параметра errno значение EINVAL.
Универсальное текстовое сопоставление функций
Подпрограмма Tchar.h |
_UNICODE и _MBCS не определены |
_MBCS определено |
_UNICODE определено |
---|---|---|---|
_tcsnicmp |
_strnicmp |
_mbsnbicmp |
_wcsnicmp |
_tcsnicmp_l |
_strnicmp_l |
_mbsnbicmp_l |
_wcsnicmp_l |
Требования
Подпрограмма |
Обязательный заголовок |
---|---|
_mbsnbicmp |
<mbstring.h> |
Дополнительные сведения о совместимости см. в разделе Совместимость.
Пример
См. пример в разделе _mbsnbcmp, _mbsnbcmp_l.
Эквивалент в .NET Framework
Неприменимо. Для вызова стандартной функции C используйте PInvoke. Дополнительные сведения см. в разделе Примеры вызова неуправляемого кода.
См. также
Ссылки
_stricmp, _wcsicmp, _mbsicmp, _stricmp_l, _wcsicmp_l, _mbsicmp_l