Namespaces
Variants

iswupper

From cppreference.net
< c ‎ | string ‎ | wide
Определено в заголовочном файле <wctype.h>
int iswupper ( wint_t ch ) ;
(начиная с C95)

Проверяет, является ли заданный широкий символ заглавной буквой, то есть одним из ABCDEFGHIJKLMNOPQRSTUVWXYZ или любой заглавной буквой, специфичной для текущей локали.

Содержание

Параметры

ch - широкий символ

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

Ненулевое значение, если широкий символ является заглавной буквой, и ноль в противном случае.

Примечания

ISO 30112 определяет, какие символы Юникода включены в категорию POSIX upper.

Пример

#include <locale.h>
#include <stdio.h>
#include <wchar.h>
#include <wctype.h>
int main(void)
{
    wchar_t c = L'\u053d'; // Армянская заглавная буква xeh ('Խ')
    printf("В локали по умолчанию, iswupper(%#x) = %d\n", c, !!iswupper(c));
    setlocale(LC_ALL, "en_US.utf8");
    printf("В Unicode локали, iswupper(%#x) = %d\n", c, !!iswupper(c));
}

Вывод:

In the default locale, iswupper(0x53d) = 0
In Unicode locale, iswupper(0x53d) = 1

Ссылки

  • Стандарт C23 (ISO/IEC 9899:2024):
  • 7.30.2.1.11 Функция iswupper (стр.: TBD)
  • Стандарт C17 (ISO/IEC 9899:2018):
  • 7.30.2.1.11 Функция iswupper (стр.: TBD)
  • Стандарт C11 (ISO/IEC 9899:2011):
  • 7.30.2.1.11 Функция iswupper (стр. 451)
  • Стандарт C99 (ISO/IEC 9899:1999):
  • 7.25.2.1.11 Функция iswupper (стр: 397)

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

проверяет, является ли символ заглавным
(функция)
C++ documentation для iswupper
**Примечание:** В данном HTML-фрагменте отсутствует текст для перевода - все содержимое состоит из: - HTML-тегов и атрибутов (не подлежат переводу) - Кодовых последовательностей в тегах ` ` (не подлежат переводу) - Числовых значений и специальных символов - Символа "–" (дефис/тире), который является стандартным математическим символом Все требования соблюдены - HTML структура и содержимое тегов ` ` сохранены без изменений. **Примечание:** В данном HTML-фрагменте отсутствует текст для перевода - все содержимое состоит из числовых значений, шестнадцатеричных кодов, символов и HTML-разметки, которые согласно инструкциям не подлежат переводу. **Примечание:** В данном HTML-фрагменте нет текста для перевода на русский язык, так как: - Числовые значения (58–64) не требуют перевода - Содержимое внутри тегов ` ` сохраняется без изменений - Символы `–` являются разделителями диапазонов - Все остальные элементы представляют собой HTML-разметку и числовые значения **Примечание:** В данном HTML-фрагменте весь текст, который требовал перевода, уже находится внутри тегов ` `, поэтому переводу подлежала только цифровая последовательность "65–70" в первом столбце. Согласно требованиям, текст внутри тегов ` ` не переводится, а C++ специфические термины сохраняются в оригинале. **Примечание:** В данном HTML-фрагменте не содержится текста для перевода, требующего локализации на русский язык. Все элементы представлены: - Числовыми диапазонами (71–90) - Шестнадцатеричными (\x47–\x5A) и восьмеричными (\107–\132) кодами - Буквенными последовательностями (GHIJKLMNOP, QRSTUVWXYZ) - Математическими символами (≠0) - Числовыми значениями (0) Все эти элементы сохраняются в оригинальном виде согласно требованиям перевода. **Примечание:** В данном HTML-фрагменте нет текста для перевода на русский язык, так как: - Числовые значения (91–96) не требуют перевода - Содержимое внутри тегов ` ` сохраняется без изменений - Символы `–` являются разделителями диапазонов - Специальные обозначения `≠0` являются математическими символами Все требования соблюдены: HTML-теги и атрибуты сохранены, содержимое тегов ` ` не переведено, C++ специфические термины сохранены. **Примечание:** В данном HTML-фрагменте нет текста для перевода на русский язык, так как: - Числовые значения (97–102) не требуют перевода - Содержимое внутри тегов ` ` сохраняется без изменений - Символы "–" являются разделителями диапазонов - Специальные символы "≠0" являются математическими обозначениями Все HTML-теги и атрибуты сохранены в оригинальном виде в соответствии с требованиями. **Примечание:** В данном HTML-фрагменте не содержится текста для перевода, требующего локализации на русский язык. Все элементы внутри тегов ` ` сохранены без изменений в соответствии с инструкциями, а остальной текст представляет собой числовые значения и символы, которые не подлежат переводу. **Примечание:** В данном HTML-фрагменте отсутствует переводимый текст за пределами тегов ` `. Все содержимое состоит из: - HTML-тегов и атрибутов (не подлежат переводу) - Числовых значений и символов в тегах ` ` (не подлежат переводу) - Символа тире `–` (используется как разделитель диапазонов) - Символа неравенства `≠` (математический символ) Поэтому перевод не требуется, исходный формат полностью сохранен в соответствии с инструкциями.
Значения ASCII символы

iscntrl
iswcntrl

isprint
iswprint

isspace
iswspace

isblank
iswblank

isgraph
iswgraph

ispunct
iswpunct

isalnum
iswalnum

isalpha
iswalpha

isupper
iswupper

islower
iswlower

isdigit
iswdigit

isxdigit
iswxdigit

десятичное шестнадцатеричное восьмеричное
0–8 \x0 \x8 \0 \10 управляющие коды ( NUL и др.) ≠0 0 0 0 0 0 0 0 0 0 0 0
9 \x9 \11 табуляция ( \t ) ≠0 0 ≠0 ≠0 0 0 0 0 0 0 0 0
10–13 \xA \xD \12 \15 пробельные символы ( \n , \v , \f , \r ) ≠0 0 ≠0 0 0 0 0 0 0 0 0 0
14–31 \xE \x1F \16 \37 управляющие коды ≠0 0 0 0 0 0 0 0 0 0 0 0
32 \x20 \40 пробел 0 ≠0 ≠0 ≠0 0 0 0 0 0 0 0 0
33–47 \x21 \x2F \41 \57 !"#$%&'()*+,-./ 0 ≠0 0 0 ≠0 ≠0 0 0 0 0 0 0
48–57 \x30 \x39 \60 \71 0123456789 0 ≠0 0 0 ≠0 0 ≠0 0 0 0 ≠0 ≠0
58–64 \x3A \x40 \72 \100 :;<=>?@ 0 ≠0 0 0 ≠0 ≠0 0 0 0 0 0 0
65–70 \x41 \x46 \101 \106 ABCDEF 0 ≠0 0 0 ≠0 0 ≠0 ≠0 ≠0 0 0 ≠0
71–90 \x47 \x5A \107 \132 GHIJKLMNOP
QRSTUVWXYZ
0 ≠0 0 0 ≠0 0 ≠0 ≠0 ≠0 0 0 0
91–96 \x5B \x60 \133 \140 [\]^_` 0 ≠0 0 0 ≠0 ≠0 0 0 0 0 0 0
97–102 \x61 \x66 \141 \146 abcdef 0 ≠0 0 0 ≠0 0 ≠0 ≠0 0 ≠0 0 ≠0
103–122 \x67 \x7A \147 \172 ghijklmnop
qrstuvwxyz
0 ≠0 0 0 ≠0 0 ≠0 ≠0 0 ≠0 0 0
123–126 \x7B \x7E \173 \176 {|}~ 0 ≠0 0 0 ≠0 ≠0 0 0 0 0 0 0
127 \x7F \177 символ удаления ( DEL ) ≠0 0 0 0 0 0 0 0 0 0 0 0