is, isw подпрограммы
Заметки
Эти символы теста подпрограмм для указанных условий.
существует подпрограммы значении значимые для любого аргумента целого числа от 1 (EOF) UCHAR_MAX (0xFF) включительно.Ожидаемый тип аргумента int.
Внимание |
---|
Для существует подпрограммы, указав аргумент типа char может привести к непредсказуемым результатам.Символ единый-байта однобайтовой кодировки или многобайтовой кодировки типа char, значение которого больше 0x7F отрицательным.Если набор узлов a char передает, компилятор может преобразовать значение со знаком int или подписанный long.Это значение может быть знак-продленно компилятором с непредвиденными результатами. |
isw подпрограммы значении значимые для любого целого числа от 1 (WEOFв 0xFFFF), включительно.wint_t тип данных задается в качестве WCHAR.H unsigned short; он может содержать любой символ или расширенный конец файла расширенных символов (WEOFзначение).
Параметр влияет на выходное значение LC_CTYPE параметр категории языкового стандарта; см. setlocale для получения дополнительных сведений.Версии этих функций без _l использование суффикса текущий языковой стандарт для данного расширения функциональности, зависимых от языковых стандартов. версии с _l суффикс идентичны за исключением того, что используется переданный параметр языкового стандарта.
В языковом стандарте "c", условия теста существует процедуры следующим образом:
isalnum
Является алфавитно-цифровым (a - Z, a - z или от 0 до 9).isalpha
В алфавитном порядке (a - Z или a - z).__isascii
Знак ASCII (0x00 - 0x7F).iscntrl
Управляющий символ (0x1F или 0x00 - 0x7F).__iscsym
Буквы, символа подчеркивания или число.__iscsymf
Буквы или символа подчеркивания.isdigit
Десятичный разряд (от 0 до 9).isgraph
Печатные символы исключает пробел ().islower
Буква в нижнем регистре (a - z).isprint
Печатных символов, включая пробелы (0x20 - 0x7E).ispunct
Знак пунктуации.isspace
Пробел (0x09 - 0x0D или 0x20).isupper
Прописная буква (a - Z).isxdigit
Шестнадцатеричная цифра (a - f, a - f или от 0 до 9).
Для isw подпрограммы результат теста для указанного состояния является независимым от языкового стандарта.Для условия теста isw функции следующим образом:
iswalnum
iswalpha или iswdigit.iswalpha
Расширенный любой символ, один из реализация-определенного набора, для которого ни один из iswcntrl" iswdigit" iswpunctили iswspace не равны нулю.iswalpha возвращает ненулевое значение только для расширенных символов для которых iswupper OR iswlower не равны нулю.iswascii
Представление расширенных символов символа ASCII (0x0000 - 0x007F).iswcntrl
Расширенный символ элемента управления.__iswcsym
Любой символ, для которого расширенный isalnum имеет значение true или символы "_".__iswcsymf
Любой символ, для которого расширенный iswalpha имеет значение true или символы "_".iswctype
Символ имеет свойство, определенное desc аргумент.Для каждого допустимого значения desc аргумент iswctypeподпрограмма классификации, эквивалентную знаковая константа, как показано в следующей таблице:Эквивалентность (iswctype c, desc другим подпрограммам тестирования isw)
Значение Desc аргумент
(iswctype c, desc число)
_ALPHA
(iswalpha c )
_ALPHA | _DIGIT
(iswalnum c )
_CONTROL
(iswcntrl c )
_DIGIT
(iswdigit c )
_ALPHA | _DIGIT | _PUNCT
(iswgraph c )
_LOWER
(iswlower c )
_ALPHA | _BLANK | _DIGIT | _PUNCT
(iswprint c )
_PUNCT
(iswpunct 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 "), преобразование формата (l" \ f), L новой строки (\ n), символ возврата каретки (\ r) L, горизонтальная табуляция (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" );
}
}
Output
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 .