Namespaces
Variants

isalpha

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

Проверяет, является ли данный символ буквенным, то есть либо заглавной буквой ( ABCDEFGHIJKLMNOPQRSTUVWXYZ ), либо строчной буквой ( abcdefghijklmnopqrstuvwxyz ).

В локалях, отличных от "C" , алфавитным символом считается символ, для которого isupper() или islower() возвращают true , или любой другой символ, считающийся алфавитным в данной локали. В любом случае, iscntrl() , isdigit() , ispunct() и isspace() вернут false для этого символа.

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

Содержание

Параметры

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

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

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

Пример

Демонстрирует использование isalpha с различными локалями (зависит от ОС).

#include <ctype.h>
#include <locale.h>
#include <stdio.h>
int main(void)
{
    unsigned char c = '\xdf'; // German letter ß in ISO-8859-1
    printf("isalpha('\\xdf') in default C locale returned %d\n", !!isalpha(c));
    setlocale(LC_CTYPE, "de_DE.iso88591");
    printf("isalpha('\\xdf') in ISO-8859-1 locale returned %d\n", !!isalpha(c));
}

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

isalpha('\xdf') in default C locale returned 0
isalpha('\xdf') in ISO-8859-1 locale returned 1

Ссылки

  • Стандарт C23 (ISO/IEC 9899:2024):
  • 7.4.1.2 Функция isalpha (стр.: TBD)
  • Стандарт C17 (ISO/IEC 9899:2018):
  • 7.4.1.2 Функция isalpha (стр. 145)
  • Стандарт C11 (ISO/IEC 9899:2011):
  • 7.4.1.2 Функция isalpha (стр. 200-201)
  • Стандарт C99 (ISO/IEC 9899:1999):
  • 7.4.1.2 Функция isalpha (стр: 181-182)
  • Стандарт C89/C90 (ISO/IEC 9899:1990):
  • 4.3.1.2 Функция isalpha

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

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