Namespaces
Variants

isdigit

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

Проверяет, является ли заданный символ числовым символом ( 0123456789 ).

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

Содержание

Параметры

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

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

Ненулевое значение, если символ является числовым символом, и ноль в противном случае.

Примечания

isdigit и isxdigit являются единственными стандартными функциями классификации узких символов, на которые не влияет текущая установленная локаль C, хотя некоторые реализации (например, Microsoft в 1252 codepage ) могут классифицировать дополнительные однобайтовые символы как цифры.

Пример

#include <ctype.h>
#include <limits.h>
#include <stdio.h>
int main(void)
{
    for (int ndx = 0; ndx <= UCHAR_MAX; ++ndx)
        if (isdigit(ndx))
            printf("%c", ndx);
    printf("\n");
}

Вывод:

0123456789

Ссылки

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

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

проверяет, является ли широкий символ цифрой
(функция)
C++ documentation для isdigit
**Примечание:** В данном HTML-фрагменте отсутствует текст для перевода - все содержимое состоит из: - HTML-тегов и атрибутов (не подлежат переводу) - Кодовых последовательностей внутри тегов ` ` (не подлежат переводу) - Числовых значений и специальных символов - Символа "–" (тире), который является стандартным разделителем диапазонов Все требования соблюдены - HTML структура и содержимое тегов ` ` сохранены без изменений. **Примечание:** В данном HTML-фрагменте отсутствует текст для перевода - все содержимое состоит из числовых значений, шестнадцатеричных кодов, символов и HTML-тегов. Согласно вашим инструкциям, HTML-теги, атрибуты и содержимое тегов ` ` не подлежат переводу. **Примечание:** В данном HTML-фрагменте отсутствует текст для перевода - все содержимое состоит из: - HTML тегов и атрибутов (не подлежат переводу) - Кодовых последовательностей в тегах ` ` (не подлежат переводу) - Числовых значений и специальных символов - Символа "–" (диапазон), который в русском языке используется в том же виде Фрагмент оставлен без изменений в соответствии с требованиями. **Примечание:** В данном HTML-фрагменте переводу подлежал только числовой диапазон "65–70" в первой ячейке таблицы. Остальной текст либо находится внутри тегов ` `, либо представляет собой C++ специфические термины и символы, которые согласно инструкциям не подлежат переводу. **Примечание:** В данном HTML-фрагменте не содержится текста для перевода, требующего локализации на русский язык. Все элементы представлены: - Числовыми диапазонами (71–90) - Шестнадцатеричными (\x47–\x5A) и восьмеричными (\107–\132) кодами - Буквенными последовательностями (GHIJKLMNOP, QRSTUVWXYZ) - Математическими символами (≠0) - Числовыми значениями (0) Все эти элементы сохраняются в исходном виде согласно требованиям перевода. **Примечание:** В данном HTML-фрагменте отсутствует текст для перевода, требующий локализации на русский язык. Все содержимое состоит из: - HTML-тегов и атрибутов (сохранены без изменений) - Числовых значений и диапазонов (91–96) - Специальных символов и escape-последовательностей в тегах ` ` (сохранены без изменений) - Математических символов (≠0) в тегах ` ` - Числовых констант (0) в тегах ` ` Все элементы сохранены в соответствии с требованиями перевода. **Примечание:** В данном HTML-фрагменте отсутствует текст для перевода, требующий локализации на русский язык. Все содержимое состоит из: - HTML-тегов и атрибутов (не подлежат переводу) - Числовых значений и шестнадцатеричных кодов в тегах ` ` (не подлежат переводу согласно инструкциям) - Символов диапазона "–" (дефис/тире) - Математических символов "≠0" (не равно нулю) Если бы присутствовал пояснительный текст вне тегов ` `, он был бы переведен на русский язык с сохранением профессионального стиля. **Примечание:** В данном 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