Other Alias
toupper, tolower, tolower_lОБЗОР
#include <ctype.h>
int toupper(int c);
int tolower(int c);
int toupper_l(int c, locale_t locale);
int tolower_l(int c, locale_t locale);
Требования макроса тестирования свойств для glibc (см. feature_test_macros(7)):
toupper_l(), tolower_l():
-
- Начиная с glibc 2.10:
- _XOPEN_SOURCE >= 700
- До glibc 2.10:
- _GNU_SOURCE
ОПИСАНИЕ
Эти функции преобразуют строчные символы в заглавные и наоборот.Если c — строчная буква, то toupper() возвращает её заглавный эквивалент, если он есть в текущей локали. В противном случае возвращается c. Функция toupper_l() выполняет ту же задачу, но использует локаль, на которую ссылается описатель локали locale.
Если c — заглавная буква, то tolower() возвращает её строчный эквивалент, если он есть в текущей локали. В противном случае возвращается c. Функция tolower_l() выполняет ту же задачу, но использует локаль, на которую ссылается описатель локали locale.
Если c имеет значение не типа unsigned char или не равно EOF, то поведение этих функций не определено.
Поведение toupper_l() и tolower_l() не определено, если значение locale равно специальному объекту локали LC_GLOBAL_LOCALE (смотрите duplocale(3)) или некорректному описателю объекта локали.
ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ
Возвращаемым значением является преобразованная буква или c, если преобразование невозможно.АТРИБУТЫ
Описание терминов данного раздела смотрите в attributes(7).Интерфейс | Атрибут | Значение |
toupper(),
tolower(),
toupper_l(), tolower_l() | безвредность в нитях | безвредно (MT-Safe) |
СООТВЕТСТВИЕ СТАНДАРТАМ
toupper(), tolower(): C89, C99, 4.3BSD, POSIX.1-2001, POSIX.1-2008.toupper_l(), tolower_l(): POSIX.1-2008.
ЗАМЕЧАНИЯ
Особенности подстановки строчных и прописных букв зависят от локали. Например, в локали по умолчанию "C" ничего не сказано про умляуты, поэтому они не преобразовываются.В некоторых не английских локалях существуют строчные буквы без заглавного аналога; например немецкая sharp.