Поделиться через


Функция StrCmpNCA (shlwapi.h)

Сравнивает указанное число символов с начала двух строк с использованием правил сортировки времени выполнения C (ASCII). Сравнение учитывает регистр.

Синтаксис

int StrCmpNCA(
  [in] LPCSTR pszStr1,
  [in] LPCSTR pszStr2,
       int    nChar
);

Параметры

[in] pszStr1

Тип: LPCTSTR

Указатель на первую строку, завершаемую значением NULL, для сравнения.

[in] pszStr2

Тип: LPCTSTR

Указатель на вторую строку, завершаемую значением NULL, для сравнения.

nChar

Тип: int

Число символов с начала каждой строки, которые необходимо сравнить.

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

Тип: int

Возвращает ноль, если подстроки идентичны. Возвращает положительное значение, если строка, полученная из указанного pszStr1, в алфавитном порядке больше, чем строка, полученная из этой строки, указываемой на pszStr2. Возвращает отрицательное значение, если строка, полученная из указанного pszStr1, в алфавитном порядке меньше строки, заданной pszStr2.

Замечания

Обратите внимание, что StrCmpNC была разработана для сравнения канонических строк. Эти строки не локализованы и состоят только из символов ниже значения ASCII 128. Поэтому он не будет работать правильно с двойным набором символов (DBCS) или другими данными с несколькими символами.

Эта функция находит первые неравные символы и возвращает положительное число, если символ из первой строки больше символа из второй, отрицательное число, если оно меньше или ноль, если они равны. Например, предположим, что pszStr1="abczb", pszStr2="abcdefg", и вы сравниваете первые четыре символа из каждого. StrCmpNC определяет, что первый неравный символ находится на позиции четыре ("z" в pszStr1 и d" в pszStr2) и возвращает положительное значение, так как код ASCII для "z" больше, чем код ASCII для "d".

Для этих версий Windows, которые не включают StrCmpNC в Shlwapi.h, эта функция должна вызываться непосредственно из Shlwapi.dll. StrCmpNCA порядковый номер 151 и StrCmpNCW имеет порядковый номер 152.

Заметка

Заголовок shlwapi.h определяет StrCmpNC как псевдоним, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора ЮНИКОДа. Сочетание использования псевдонима, нейтрального для кодирования, с кодом, не зависящим от кодирования, может привести к несоответствиям, которые приводят к ошибкам компиляции или среды выполнения. Дополнительные сведения см. в соглашениях о прототипах функций.

Требования

Требование Ценность
минимальные поддерживаемые клиентские Windows 2000 Профессиональный, Windows XP [только классические приложения]
минимальный поддерживаемый сервер Windows Server 2003 [только классические приложения]
целевая платформа Виндоус
заголовка shlwapi.h
библиотеки Shlwapi.lib
DLL Shlwapi.dll (версия 5.0 или более поздняя версия)

См. также

CompareString

StrCmpC

StrCmpN