std::towlower
Материал из cppreference.com
Определено в заголовочном файле <cwctype>
|
||
std::wint_t towlower( std::wint_t ch ); |
||
Преобразует заданный широкий символ в нижний регистр, если это возможно.
Если значение ch не может быть представлено как wchar_t и не равно значению макроса WEOF, поведение неопределено.
Содержание |
[править] Параметры
ch | — | широкий символ для преобразования |
[править] Возвращаемое значение
Версия ch в нижнем регистре или неизменённая версия ch, если в текущей локали C не указана версия в нижнем регистре.
[править] Примечание
С помощью этой функции можно выполнить только сопоставление символов 1:1, например, греческая прописная буква 'Σ' имеет две строчные формы, в зависимости от позиции в слове: 'σ' и 'ς'. В этом случае вызов std::towlower
не может быть использован для получения правильной строчной буквы.
ISO 30112 определяет, какие пары символов Юникода включены в это сопоставление.
[править] Пример
Запустить этот код
#include <clocale> #include <cwctype> #include <iostream> int main() { wchar_t c = L'\u0190'; // Латинская заглавная буква E ('Ɛ') std::cout << std::hex << std::showbase; std::cout << "в локали по умолчанию, towlower(" << static_cast<std::wint_t>(c) << ") = " << std::towlower(c) << '\n'; std::setlocale(LC_ALL, "en_US.utf8"); std::cout << "в локали Юникода, towlower(" << static_cast<std::wint_t>(c) << ") = " << std::towlower(c) << '\n'; }
Вывод:
в локали по умолчанию, towlower(0x190) = 0x190 в локали Юникода, towlower(0x190) = 0x25b
[править] Смотрите также
преобразует широкий символ в верхний регистр (функция) | |
преобразует символ в нижний регистр, используя фасет ctype локали (шаблон функции) | |
преобразует символ в нижний регистр (функция) | |
Документация C по towlower
|