Namespaces
Variants

isgraph

From cppreference.net
< c ‎ | string ‎ | byte
Определено в заголовочном файле <ctype.h>
int isgraph ( int ch ) ;

Проверяет, имеет ли данный символ графическое представление, т.е. является ли он либо цифрой ( 0123456789 ), заглавной буквой ( ABCDEFGHIJKLMNOPQRSTUVWXYZ ), строчной буквой ( abcdefghijklmnopqrstuvwxyz ), либо знаком пунктуации ( !"#$%&'()*+,-./:;<=>?@[\]^_`{|}~ ), или любым графическим символом, специфичным для текущей локали C.

Поведение не определено, если значение ch не представимо в виде unsigned char и не равно EOF .

Содержание

Параметры

ch - символ для классификации

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

Ненулевое значение, если символ имеет графическое представление, и ноль в противном случае.

Пример

#include <ctype.h>
#include <locale.h>
#include <stdio.h>
int main(void)
{
    unsigned char c = '\xb6'; // the character ¶ in ISO-8859-1
    printf("In the default C locale, \\xb6 is %sgraphical\n",
           isgraph(c) ? "" : "not " );
    setlocale(LC_ALL, "en_GB.iso88591");
    printf("In ISO-8859-1 locale, \\xb6 is %sgraphical\n",
           isgraph(c) ? "" : "not " );
}

Возможный вывод:

In the default C locale, \xb6 is not graphical
In ISO-8859-1 locale, \xb6 is graphical

Ссылки

  • Стандарт C23 (ISO/IEC 9899:2024):
  • 7.4.1.6 Функция isgraph (стр.: TBD)
  • Стандарт C17 (ISO/IEC 9899:2018):
  • 7.4.1.6 Функция isgraph (стр. 146)
  • Стандарт C11 (ISO/IEC 9899:2011):
  • 7.4.1.6 Функция isgraph (стр. 201-202)
  • Стандарт C99 (ISO/IEC 9899:1999):
  • 7.4.1.6 Функция isgraph (стр. 182-183)
  • Стандарт C89/C90 (ISO/IEC 9899:1990):
  • 4.3.1.5 Функция isgraph

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

проверяет, является ли широкий символ графическим символом
(функция)
C++ documentation для isgraph
**Примечание:** В данном HTML-фрагменте отсутствует текст для перевода - все содержимое состоит из: - HTML-тегов и атрибутов (не подлежат переводу) - Кодовых последовательностей внутри тегов ` ` (не подлежат переводу) - Числовых значений и специальных символов - Символа "–" (тире), который является стандартным разделителем диапазонов Все элементы сохранены в оригинальном виде в соответствии с требованиями. **Примечание:** В данном HTML-фрагменте отсутствует текст для перевода - все содержимое состоит из HTML-тегов, атрибутов, числовых значений и C++ специфических обозначений внутри тегов ` `, которые согласно инструкциям не подлежат переводу. **Примечание:** В данном HTML-фрагменте отсутствует текст для перевода на русский язык. Все содержимое состоит из: - HTML тегов и атрибутов (не подлежат переводу) - Числовых значений и символов в тегах ` ` (не подлежат переводу согласно инструкциям) - Специальных символов и C++ терминов (сохранены в оригинале) Единственный текстовый элемент "–" (тире) между тегами ` ` является стандартным символом диапазона и не требует перевода. **Примечание:** В данном HTML-фрагменте переводить нечего, так как: - Числовые значения (65–70) остаются без изменений - Текст внутри тегов ` ` не переводится согласно инструкциям - Символы `–` (тире) и `≠` (не равно) являются стандартными математическими символами - HTML-теги и атрибуты сохранены в оригинальном виде **Примечание:** В данном HTML-фрагменте нет текста для перевода на русский язык, так как: - Числовые диапазоны (71–90) не требуют перевода - Все содержимое внутри тегов ` ` сохраняется без изменений согласно инструкциям - Символы "–" являются разделителями диапазонов - Специальные обозначения "≠0" являются математическими символами **Примечание:** В данном HTML-фрагменте нет текста для перевода, требующего локализации на русский язык. Все содержимое состоит из: - HTML-тегов и атрибутов (не подлежат переводу) - Кодов символов в тегах ` ` (не подлежат переводу) - Числовых значений и специальных символов (не требуют перевода) - Символа "–" (дефис/тире, не требует перевода) Единственный потенциально переводимый элемент "–" между тегами ` ` оставлен без изменений, так как в техническом контексте он обычно не переводится. **Примечание:** В данном HTML-фрагменте отсутствует текст для перевода, требующий локализации на русский язык. Все содержимое состоит из: - HTML-тегов и атрибутов (не подлежат переводу) - Кодовых последовательностей в тегах ` ` (сохранены без изменений) - Числовых значений и символов - Специальных математических символов (≠) Если бы присутствовал пояснительный текст вне тегов кода, он был бы переведен на русский язык с сохранением профессиональной терминологии C++. **Примечание:** В данном HTML-фрагменте нет текста для перевода на русский язык, так как: - Числовые значения (103–122) не требуют перевода - Содержимое внутри тегов ` ` сохраняется без изменений согласно инструкциям - Символы `–` и `≠` являются математическими символами, а не текстом для перевода - 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