toupper
Определён в заголовочном файле <ctype.h> | ||
|---|---|---|
int toupper( int ch ); |
Преобразует заданный символ в верхний регистр согласно правилам преобразования символов, определённым для установленной в данный момент локали C.
В локали "C" по умолчанию следующие строчные буквы abcdefghijklmnopqrstuvwxyz заменяются соответствующими заглавными буквами ABCDEFGHIJKLMNOPQRSTUVWXYZ.
Параметры
| ch | - | символ для преобразования. Если значение ch не представимо типом unsignedchar и не равно EOF, поведение не определено. |
Возвращаемое значение
Вариант ch в верхнем регистре или неизменённый ch, если в текущей локали C не указан вариант в верхнем регистре.
Пример
#include <ctype.h>
#include <limits.h>
#include <locale.h>
#include <stdio.h>
int main(void)
{
// in the default locale:
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'; // the character ž in ISO-8859-15
// but ¸ (cedilla) in 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 |
|
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/c/string/byte/toupper