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


Функция IsDBCSLeadByte (winnls.h)

Определяет, является ли указанный символ байтом для кодовой страницы Windows ANSI по умолчанию (CP_ACP). Потенциальный байт — это первый байт двухбайтового символа в двухбайтовой кодировке (DBCS) для кодовой страницы.

Примечание Чтобы использовать другую кодовую страницу, приложение должно использовать функцию IsDBCSLeadByteEx .
 

Синтаксис

BOOL IsDBCSLeadByte(
  [in] BYTE TestChar
);

Параметры

[in] TestChar

Проверяемый символ.

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

Возвращает ненулевое значение, если тестовый символ потенциально является байтом свинца. Функция возвращает значение 0, если проверочный символ не является байтом свинца или однобайтовый символ. Чтобы получить расширенные сведения об ошибке, приложение может вызвать GetLastError.

Комментарии

Примечание Эта функция не проверяет наличие или допустимость следового байта. Таким образом, MultiByteToWideChar может не распознать последовательность, которую приложение, использующее IsDBCSLeadByte , сообщает в качестве байта свинца. Приложение может легко не синхронизироваться с результатами MultiByteToWideChar, что может привести к непредвиденным ошибкам или несоответствиям размера буфера.
 
Как правило, вместо низкоуровневого манипулирования данными кодовой страницы приложения должны использовать MultiByteToWideChar для преобразования данных в UTF-16 и работы с ними в этой кодировке.

Значения байтов свинца относятся к каждому отдельному DBCS. Некоторые байтовые значения могут отображаться на одной кодовой странице как в качестве байтового и конечного байтов символа DBCS.

Чтобы разобраться в строке DBCS, приложение обычно запускается в начале строки и сканирует вперед, отслеживая, когда оно встречает байт свинца, и рассматривая следующий байт как завершающую часть того же символа. Если приложение должно выполнять резервное копирование, оно должно использовать CharPrev вместо того, чтобы пытаться разработать собственный алгоритм.

Требования

Требование Значение
Минимальная версия клиента Windows 2000 Профессиональная [классические приложения | Приложения UWP]
Минимальная версия сервера Windows 2000 Server [классические приложения | Приложения UWP]
Целевая платформа Windows
Header winnls.h (включая Windows.h)
Библиотека Kernel32.lib
DLL Kernel32.dll

См. также

IsDBCSLeadByteEx

MultiByteToWideChar

Функции Юникода и кодировки

Юникод и наборы символов