toupper
From cppreference.net
|
Определено в заголовочном файле
<ctype.h>
|
||
|
int
toupper
(
int
ch
)
;
|
||
Преобразует заданный символ в верхний регистр в соответствии с правилами преобразования символов, определенными текущей установленной локалью C.
В стандартной локали
"C"
следующие строчные буквы
abcdefghijklmnopqrstuvwxyz
заменяются соответствующими прописными буквами
ABCDEFGHIJKLMNOPQRSTUVWXYZ
.
Содержание |
Параметры
| ch | - | символ для преобразования. Если значение ch не может быть представлено как unsigned char и не равно EOF , поведение не определено. |
Возвращаемое значение
Верхний регистр символа ch или неизмененный ch если версия в верхнем регистре не указана в текущей локали C.
Пример
Запустить этот код
#include <ctype.h> #include <limits.h> #include <locale.h> #include <stdio.h> int main(void) { // в локали по умолчанию: for (unsigned char l = 0, u; l != UCHAR_MAX; ++l) if ((u = toupper(l)) != l) printf("%c%c ", l, u); printf("\n\n"); unsigned char c = '\xb8'; // символ ž в ISO-8859-15 // но ¸ (седилья) в ISO-8859-1 setlocale(LC_ALL, "en_US.iso88591"); printf("in iso8859-1, toupper('0x%x') gives 0x%x\n", c, toupper(c)); setlocale(LC_ALL, "en_US.iso885915"); printf("in iso8859-15, toupper('0x%x') gives 0x%x\n", c, toupper(c)); }
Возможный вывод:
aA bB cC dD eE fF gG hH iI jJ kK lL mM nN oO pP qQ rR sS tT uU vV wW xX yY zZ
in iso8859-1, toupper('0xb8') gives 0xb8
in iso8859-15, toupper('0xb8') gives 0xb4
Ссылки
- Стандарт C23 (ISO/IEC 9899:2024):
-
- 7.4.2.2 Функция toupper (стр.: TBD)
- Стандарт C17 (ISO/IEC 9899:2018):
-
- 7.4.2.2 Функция toupper (стр: 147-148)
- Стандарт C11 (ISO/IEC 9899:2011):
-
- 7.4.2.2 Функция toupper (стр: 204)
- Стандарт C99 (ISO/IEC 9899:1999):
-
- 7.4.2.2 Функция toupper (стр: 185)
- Стандарт C89/C90 (ISO/IEC 9899:1990):
-
- 4.3.2.2 Функция toupper
Смотрите также
|
преобразует символ в нижний регистр
(функция) |
|
|
(C95)
|
преобразует широкий символ в верхний регистр
(функция) |
|
Документация C++
для
toupper
|
|