Функция CharPrevA (winuser.h)

Извлекает указатель на предыдущий символ в строке. Эта функция может обрабатывать строки, состоящие из однобайтовых или многобайтовых символов.

Синтаксис

LPSTR CharPrevA(
  [in] LPCSTR lpszStart,
  [in] LPCSTR lpszCurrent
);

Параметры

[in] lpszStart

Тип: LPCTSTR

Начало строки.

[in] lpszCurrent

Тип: LPCTSTR

Символ в строке, завершаемой null.

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

Тип: LPTSTR

Возвращаемое значение является указателем на предыдущий символ в строке или на первый символ в строке, если параметр lpszCurrent равен параметру lpszStart .

Комментарии

При вызове в качестве функции ANSI CharPrev использует системную кодовую страницу по умолчанию, тогда как CharPrevExA указывает кодовую страницу для использования.

Эта функция работает с ожиданиями пользователей по умолчанию для символов при работе с диакритических знаков. Например, строка, содержащая U+0061 U+030a "LATIN SMALL LETTER A" + COMBINING RING ABOVE", которая выглядит как "å", будет продвигать две кодовые точки, а не одну. Строка, содержащая U+0061 U+0301 U+0302 U+0303 U+0304, которая выглядит как "a'^~ ̄", будет продвигать пять кодовых точек, а не одну и т. д.

Примечание

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

Требования

   
Минимальная версия клиента Windows 2000 Professional [только классические приложения]
Минимальная версия сервера Windows 2000 Server [только классические приложения]
Целевая платформа Windows
Header winuser.h (включая Windows.h)
Библиотека User32.lib
DLL User32.dll

См. также раздел

CharNext

CharNextExA

CharPrevExA

Основные понятия

Справочные материалы

Строки