towupper - преобразует широкий символ к верхнему регистру
towupper(3)
преобразует широкий символ к верхнему регистру
Other Alias
towupper_l
ОБЗОР
#include <wctype.h>
wint_t towupper(wint_t wc);
wint_t towupper_l(wint_t wc, locale_t locale);
Требования макроса тестирования свойств для glibc
(см. feature_test_macros(7)):
towupper_l():
Начиная с glibc 2.10:
_XOPEN_SOURCE >= 700
До glibc 2.10:
_GNU_SOURCE
ОПИСАНИЕ
Функция
towupper() является широкосимвольным аналогом функции
toupper(3). Если
wc является широким символом в нижнем регистре и в
текущей локали существует эквивалент в верхнем регистре, то возвращается
эквивалент
wc в верхнем регистре. Во всех остальных случаях
wc
возвращается неизменным.
Функция towupper_l() производит то же действие, но выполняет
преобразование на основе информации о типе символа в локали, указанной в
locale. Поведение towupper_l() не определёно, если значение locale
равно специальному объекту локали LC_GLOBAL_LOCALE (смотрите
duplocale(3)) или некорректному описателю объекта локали.
Аргумент wc должен быть представим типом wchar_t и быть корректным
символом в локали или равняться значению WEOF.
ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ
Если
wc был преобразован к верхнему регистру, то
towupper() возвращает
его эквивалент в верхнем регистре; в противном случае возвращается
wc.
АТРИБУТЫ
Описание терминов данного раздела смотрите в
attributes(7).
Интерфейс Атрибут Значение
towupper()
безвредность в потоках: безвредно (MT-Safe locale)
towupper_l()
безвредность в потоках: безвредно (MT-Safe)
ВЕРСИИ
Функция
towupper_l() впервые появилась в glibc 2.3.
СООТВЕТСТВИЕ СТАНДАРТАМ
towupper(): C99, POSIX.1-2001 (XSI); расширение XSI в POSIX.1-2008, но
помечена как устаревшая.
towupper_l(): POSIX.1-2008.
ЗАМЕЧАНИЯ
Поведение этих функций зависит от категории
LC_CTYPE локали.
Эти функции не очень подходят для работы с символами Юникода, так как в
Юникоде есть три типа регистра: верхний, нижний и заглавный.