Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
isalnum, , iswalnum_isalnum_l_iswalnum_l
isalpha, , iswalpha_isalpha_l_iswalpha_l
isascii, , __isasciiiswascii
isblank, , iswblank_isblank_l_iswblank_l
iscntrl, , iswcntrl_iscntrl_l_iswcntrl_l
iscsym, iscsymf, __iscsym__iswcsym__iscsymf__iswcsymf_iscsym_l_iswcsym_l_iscsymf_l_iswcsymf_l
_isctype, , iswctype_isctype_l_iswctype_l
isdigit, iswdigit, _isdigit_l_iswdigit_lisgraphiswgraph_isgraph_l_iswgraph_l
isleadbyte, _isleadbyte_l
islower, , iswlower_islower_l_iswlower_l
isprint, , iswprint_isprint_l_iswprint_l
ispunct, , iswpunct_ispunct_l_iswpunct_l
isspace, , iswspace_isspace_l_iswspace_l
isupper, , _isupper_liswupper_iswupper_l
isxdigit, , iswxdigit_isxdigit_l_iswxdigit_l
Замечания
Эти подпрограммы проверяют символы на соответствие заданным условиям.
Подпрограммы is дают значимые результаты для любого целочисленного аргумента от –1 (EOFдо UCHAR_MAX 0xFF), включительно. Ожидается тип аргумента int.
Внимание
is Для подпрограмм передача аргумента типа char может привести к непредсказуемым результатам. Однобайтовый символ типа char со значением, превышающем 0x7F, в однобайтовой или многобайтовой кодировке является отрицательным. char Если передается, компилятор может преобразовать значение в значение signed int или значениеsigned long. Компилятор может расширить знак данного значения, что приведет к непредвиденным результатам.
Подпрограммы isw дают значимые результаты для любого целочисленного значения от -1 (WEOF) до 0xFFFF включительно. Тип wint_t данных определяется как <WCHAR.H> .unsigned short Он может содержать любой широкий символ или значение конца файла (WEOF).
Выходное значение зависит от параметра LC_CTYPE категории языкового стандарта. Дополнительные сведения см. в разделе setlocale. Версии этих функций без суффикса _l используют текущий языковой стандарт для данного поведения, зависимого от языкового стандарта. Версии с суффиксом _l идентичны, однако они используют переданный параметр языкового стандарта.
В языковом стандарте "C" условия теста для is подпрограмм приведены следующим образом:
isalnum
Алфавитно-цифровые символы (A–Z, a–z или 0–9).
isalpha
Алфавитные (A–Z или a–z).
__isascii
Символы ASCII (0x00–0x7F).
isblank
Горизонтальная табуляция или пробел (0x09 или 0x20).
iscntrl
Управляющий символ (0x00–0x1F или 0x7F).
__iscsym
Буква, символ подчеркивания или цифра.
__iscsymf
Буква или символ подчеркивания.
isdigit
Десятичная цифра (0–9).
isgraph
Печатный символ, кроме пробела (0x20).
islower
Буквы нижнего регистра (a–z).
isprint
Печатные символы, включая пробел (0x20–0x7E).
ispunct
Знак препинания.
isspace
Пробельный символ (0x09–0x0D или 0x20).
isupper
Буквы верхнего регистра (A–Z).
isxdigit
Шестнадцатеричная цифра (А–F, a–f или 0–9).
isw Для подпрограмм результат теста для указанного условия не зависит от языкового стандарта. Ниже приведены условия тестирования для isw функций.
iswalnum
iswalpha или iswdigit.
iswalpha
Любой расширенный символ из набора, определенного реализацией, для которого ни одна из функций iswcntrl, iswdigit, iswpunct и iswspace не принимает значение, отличное от нуля. iswalpha возвращает ненулевое значение только для расширенных символов, для которых iswupper или iswlower имеет ненулевое значение.
iswascii
Представление символа ASCII (0x0000–0x007F) в расширенных символах.
iswblank
Расширенный символ, соответствующий стандартному пробелу или входящий в определяемый реализацией набор расширенных символов, для которых функция iswalnum имеет значение false. Стандартные пустые символы — пробел (L' ') и горизонтальная вкладка (L'\t').
iswcntrl
Расширенный символ управления.
__iswcsym
Любой расширенный символ, для которого функция isalnum имеет значение true, или символ "_".
__iswcsymf
Любой расширенный символ, для которого функция iswalpha имеет значение true, или символ "_".
iswctype
Символ имеет свойство, указанное аргументом desc. Для каждого допустимого значения аргумента iswctypeсуществует эквивалентная подпрограмма классификации расширенных desc символов, как показано в следующей таблице:
Эквивалентность другим isw подпрограммам iswctype(c, desc) тестирования
Значение аргумента desc |
Эквивалент iswctype(c, desc) |
|---|---|
_ALPHA |
iswalpha(c) |
_ALPHA | _DIGIT |
iswalnum(c) |
_BLANK |
iswblank(c) |
_CONTROL |
iswcntrl(c) |
_DIGIT |
iswdigit(c) |
_ALPHA | _DIGIT | _PUNCT |
iswgraph(c) |
_LOWER |
iswlower(c) |
_ALPHA | _BLANK | _DIGIT | _PUNCT |
iswprint(c) |
_PUNCT |
iswpunct(c) |
_BLANK |
iswblank(c) |
_SPACE |
iswspace(c) |
_UPPER |
iswupper(c) |
_HEX |
iswxdigit(c) |
iswdigit
Расширенный символ, соответствующий символу десятичной цифры.
iswgraph
Доступный для печати широкий символ, кроме пробелов (L' ').
iswlower
Строчная буква или член определенного реализацией набора расширенных символов, для которых ни одна из функций iswcntrl, iswdigit, iswpunct и iswspace не имеет значения, отличного от нуля. iswlower возвращает ненулевое значение только для расширенных символов, которые соответствуют буквам нижнего регистра.
iswprint
Печатный широкий символ, включая широкий пробел (L' ').
iswpunct
Доступный для печати широкий символ, который не является широким пробелом (L' ') и не широким символом, для которого iswalnum ненулевое значение.
iswspace
Расширенный символ, соответствующий стандартному расширенному символу пробела или являющийся одним из определяемых реализацией расширенных символов, для которых функция iswalnum имеет значение false. Стандартные символы пробелов: пробел (), веб-канал формы (L' '), newline (L'\f'), возврат каретки (L'\n'L'\r'), горизонтальная вкладка (L'\t') и вертикальная вкладка (L'\v').
iswupper
Расширенный символ верхнего регистра или символ из набора определенных реализацией расширенных символов, для которых ни одна из функций iswcntrl, iswdigit, iswpunct и iswspace не имеет нулевого значения. Функция iswupper возвращает ненулевое значение только для расширенных символов, которые соответствуют буквам верхнего регистра.
iswxdigit
Расширенный символ, который соответствует символу шестнадцатеричной цифры.
Пример
// crt_isfam.c
/* This program tests all characters between 0x0
* and 0x7F, then displays each character with abbreviations
* for the character-type codes that apply.
*/
#include <stdio.h>
#include <ctype.h>
int main( void )
{
int ch;
for( ch = 0; ch <= 0x7F; ch++ )
{
printf( "%.2x ", ch );
printf( " %c", isprint( ch ) ? ch : ' ' );
printf( "%4s", isalnum( ch ) ? "AN" : "" );
printf( "%3s", isalpha( ch ) ? "A" : "" );
printf( "%3s", __isascii( ch ) ? "AS" : "" );
printf( "%3s", iscntrl( ch ) ? "C" : "" );
printf( "%3s", __iscsym( ch ) ? "CS " : "" );
printf( "%3s", __iscsymf( ch ) ? "CSF" : "" );
printf( "%3s", isdigit( ch ) ? "D" : "" );
printf( "%3s", isgraph( ch ) ? "G" : "" );
printf( "%3s", islower( ch ) ? "L" : "" );
printf( "%3s", ispunct( ch ) ? "PU" : "" );
printf( "%3s", isspace( ch ) ? "S" : "" );
printf( "%3s", isprint( ch ) ? "PR" : "" );
printf( "%3s", isupper( ch ) ? "U" : "" );
printf( "%3s", isxdigit( ch ) ? "X" : "" );
printf( ".\n" );
}
}
Выходные данные
00 AS C .
01 AS C .
02 AS C .
03 AS C .
04 AS C .
05 AS C .
06 AS C .
07 AS C .
08 AS C .
09 AS C S .
0a AS C S .
0b AS C S .
0c AS C S .
0d AS C S .
0e AS C .
0f AS C .
10 AS C .
11 AS C .
12 AS C .
13 AS C .
14 AS C .
15 AS C .
16 AS C .
17 AS C .
18 AS C .
19 AS C .
1a AS C .
1b AS C .
1c AS C .
1d AS C .
1e AS C .
1f AS C .
20 AS S PR .
21 ! AS G PU PR .
22 " AS G PU PR .
23 # AS G PU PR .
24 $ AS G PU PR .
25 % AS G PU PR .
26 & AS G PU PR .
27 ' AS G PU PR .
28 ( AS G PU PR .
29 ) AS G PU PR .
2a * AS G PU PR .
2b + AS G PU PR .
2c , AS G PU PR .
2d - AS G PU PR .
2e . AS G PU PR .
2f / AS G PU PR .
30 0 AN AS CS D G PR X.
31 1 AN AS CS D G PR X.
32 2 AN AS CS D G PR X.
33 3 AN AS CS D G PR X.
34 4 AN AS CS D G PR X.
35 5 AN AS CS D G PR X.
36 6 AN AS CS D G PR X.
37 7 AN AS CS D G PR X.
38 8 AN AS CS D G PR X.
39 9 AN AS CS D G PR X.
3a : AS G PU PR .
3b ; AS G PU PR .
3c < AS G PU PR .
3d = AS G PU PR .
3e > AS G PU PR .
3f ? AS G PU PR .
40 @ AS G PU PR .
41 A AN A AS CS CSF G PR U X.
42 B AN A AS CS CSF G PR U X.
43 C AN A AS CS CSF G PR U X.
44 D AN A AS CS CSF G PR U X.
45 E AN A AS CS CSF G PR U X.
46 F AN A AS CS CSF G PR U X.
47 G AN A AS CS CSF G PR U .
48 H AN A AS CS CSF G PR U .
49 I AN A AS CS CSF G PR U .
4a J AN A AS CS CSF G PR U .
4b K AN A AS CS CSF G PR U .
4c L AN A AS CS CSF G PR U .
4d M AN A AS CS CSF G PR U .
4e N AN A AS CS CSF G PR U .
4f O AN A AS CS CSF G PR U .
50 P AN A AS CS CSF G PR U .
51 Q AN A AS CS CSF G PR U .
52 R AN A AS CS CSF G PR U .
53 S AN A AS CS CSF G PR U .
54 T AN A AS CS CSF G PR U .
55 U AN A AS CS CSF G PR U .
56 V AN A AS CS CSF G PR U .
57 W AN A AS CS CSF G PR U .
58 X AN A AS CS CSF G PR U .
59 Y AN A AS CS CSF G PR U .
5a Z AN A AS CS CSF G PR U .
5b [ AS G PU PR .
5c \ AS G PU PR .
5d ] AS G PU PR .
5e ^ AS G PU PR .
5f _ AS CS CSF G PU PR .
60 ` AS G PU PR .
61 a AN A AS CS CSF G L PR X.
62 b AN A AS CS CSF G L PR X.
63 c AN A AS CS CSF G L PR X.
64 d AN A AS CS CSF G L PR X.
65 e AN A AS CS CSF G L PR X.
66 f AN A AS CS CSF G L PR X.
67 g AN A AS CS CSF G L PR .
68 h AN A AS CS CSF G L PR .
69 i AN A AS CS CSF G L PR .
6a j AN A AS CS CSF G L PR .
6b k AN A AS CS CSF G L PR .
6c l AN A AS CS CSF G L PR .
6d m AN A AS CS CSF G L PR .
6e n AN A AS CS CSF G L PR .
6f o AN A AS CS CSF G L PR .
70 p AN A AS CS CSF G L PR .
71 q AN A AS CS CSF G L PR .
72 r AN A AS CS CSF G L PR .
73 s AN A AS CS CSF G L PR .
74 t AN A AS CS CSF G L PR .
75 u AN A AS CS CSF G L PR .
76 v AN A AS CS CSF G L PR .
77 w AN A AS CS CSF G L PR .
78 x AN A AS CS CSF G L PR .
79 y AN A AS CS CSF G L PR .
7a z AN A AS CS CSF G L PR .
7b { AS G PU PR .
7c | AS G PU PR .
7d } AS G PU PR .
7e ~ AS G PU PR .
7f AS C .
См. также
Классификация символов
Локаль
setlocale, _wsetlocale
Интерпретация последовательностей многобайтовых символов
Функции to