Namespaces
Variants

std:: towlower

From cppreference.net
Определено в заголовочном файле <cwctype>

Преобразует заданный широкий символ в нижний регистр, если это возможно.

Если значение ch не представимо как wchar_t и не равно значению макроса WEOF , поведение не определено.

Содержание

Параметры

ch - широкий символ для преобразования

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

Строчная версия ch или неизмененный ch если в текущей локали C не указана строчная версия.

Примечания

Только однозначное преобразование символов может быть выполнено этой функцией, например, греческая заглавная буква 'Σ' имеет две строчные формы в зависимости от позиции в слове: 'σ' и 'ς' . Вызов std::towlower не может быть использован для получения корректной строчной формы в данном случае.

ISO 30112 определяет, какие пары символов Юникода включены в это отображение.

Пример

#include <clocale>
#include <cwctype>
#include <iostream>
int main()
{
    wchar_t c = L'\u0190'; // Latin capital open E ('Ɛ')
    std::cout << std::hex << std::showbase;
    std::cout << "in the default locale, towlower("
              << static_cast<std::wint_t>(c) << ") = "
              << std::towlower(c) << '\n';
    std::setlocale(LC_ALL, "en_US.utf8");
    std::cout << "in Unicode locale, towlower("
              << static_cast<std::wint_t>(c) << ") = "
              << std::towlower(c) << '\n';
}

Вывод:

in the default locale, towlower(0x190) = 0x190
in Unicode locale, towlower(0x190) = 0x25b

Смотрите также

преобразует широкий символ в верхний регистр
(функция)
преобразует символ в нижний регистр с использованием ctype фасета локали
(шаблон функции)
преобразует символ в нижний регистр
(функция)