is
, isw
yordamlar
isalnum
, iswalnum
, _isalnum_l
, _iswalnum_l
isalpha
, iswalpha
, _isalpha_l
, _iswalpha_l
isascii
, __isascii
, iswascii
isblank
, iswblank
, _isblank_l
, _iswblank_l
iscntrl
, iswcntrl
, _iscntrl_l
, _iswcntrl_l
iscsym
, , __iscsym
iscsymf
, , __iswcsym
, __iscsymf
, __iswcsymf
, _iscsym_l
, _iswcsym_l
, _iscsymf_l
,_iswcsymf_l
_isctype
, iswctype
, _isctype_l
, _iswctype_l
isdigit
, iswdigit
, _isdigit_l
, ,isgraph
_iswdigit_l
, iswgraph
, , _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_l
, iswupper
, _iswupper_l
isxdigit
, iswxdigit
, _isxdigit_l
, _iswxdigit_l
Açıklamalar
Bu yordamlar, belirtilen koşullar için karakterleri test eder.
Yordamlar is
, -1 () ile (EOF
0xFF) (dahil) UCHAR_MAX
arasında herhangi bir tamsayı bağımsız değişkeni için anlamlı sonuçlar üretir. Beklenen bağımsız değişken türü şeklindedir int
.
Dikkat
is
Yordamlar için, türünde char
bir bağımsız değişken geçirmek öngörülemeyen sonuçlar verebilir. 0x7F'den büyük bir değere sahip türün char
SBCS veya MBCS tek baytlık karakteri negatiftir. geçirilirse char
, derleyici değeri veya signed int
signed long
değerine dönüştürebilir. Bu değer, beklenmeyen sonuçlarla derleyici tarafından imzayla genişletilebilir.
Yordamlar isw
, -1 () ile 0xFFFF (WEOF
dahil) arasında herhangi bir tamsayı değeri için anlamlı sonuçlar üretir. wint_t
Veri türü içinde <WCHAR.H>
olarak unsigned short
tanımlanır. Herhangi bir geniş karakteri veya geniş karakterli dosya sonu (WEOF
) değerini barındırabilir.
Çıkış değeri, yerel ayarın LC_CTYPE
kategori ayarının ayarından etkilenir. Daha fazla bilgi için bkz. setlocale
. Bu işlevlerin son eki olmayan _l
sürümleri, bu yerel ayara bağımlı davranış için geçerli yerel ayarı kullanır; son ekine _l
sahip sürümler, bunun yerine geçirilen yerel ayar parametresini kullanmaları dışında aynıdır.
"C" yerel ayarında, yordamlar için is
test koşulları aşağıdaki gibidir:
isalnum
Alfasayısal (A - Z, a - z veya 0 - 9).
isalpha
Alfabetik (A - Z veya a - z).
__isascii
ASCII karakteri (0x00 - 0x7F).
isblank
Yatay sekme veya boşluk karakteri (0x09 veya 0x20).
iscntrl
Denetim karakteri (0x00 - 0x1F veya 0x7F).
__iscsym
Harf, alt çizgi veya basamak.
__iscsymf
Harf veya alt çizgi.
isdigit
Ondalık basamak (0 - 9).
isgraph
Boşluk (0x20) dışında yazdırılabilir karakter.
islower
Küçük harf (a - z).
isprint
Boşluk dahil yazdırılabilir karakter (0x20 - 0x7E).
ispunct
Noktalama karakteri.
isspace
Boşluk karakteri (0x09 - 0x0D veya 0x20).
isupper
Büyük harf (A - Z).
isxdigit
Onaltılık basamak (A - F, a - f veya 0 - 9).
isw
Yordamlar için, belirtilen koşul için testin sonucu yerel ayardan bağımsızdır. İşlevlerin isw
test koşulları şunlardır:
iswalnum
iswalpha
veya iswdigit
.
iswalpha
, , iswpunct
veya iswspace
sıfır olmayan, uygulama tanımlı kümelerden biri olan iswcntrl
iswdigit
herhangi bir geniş karakter. iswalpha
yalnızca veya iswlower
sıfır olmayan geniş karakterler için iswupper
sıfır olmayan döndürür.
iswascii
ASCII karakterinin geniş karakter gösterimi (0x0000 - 0x007F).
iswblank
Standart boşluk karakterine karşılık gelen veya false olan uygulama tanımlı geniş karakter kümesinden biri olan iswalnum
geniş karakter. Standart boş karakterler boşluk (L' '
) ve yatay sekmedir (L'\t'
).
iswcntrl
Geniş karakteri kontrol edin.
__iswcsym
True olan isalnum
herhangi bir geniş karakter veya '_' karakteri.
__iswcsymf
True olan iswalpha
herhangi bir geniş karakter veya '_' karakteri.
iswctype
Karakter, bağımsız değişken tarafından desc
belirtilen özelliğe sahiptir. bağımsız değişkeninin desc
iswctype
her geçerli değeri için, aşağıdaki tabloda gösterildiği gibi eşdeğer bir geniş karakter sınıflandırma yordamı vardır:
diğer isw
test yordamlarına eşdeğerliği iswctype(c, desc)
Bağımsız değişkenin desc değeri |
iswctype(c, desc) eşdeğer |
---|---|
_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
Ondalık basamak karakterine karşılık gelen geniş karakter.
iswgraph
Boşluk geniş karakteri (L' '
) dışında yazdırılabilir geniş karakter.
iswlower
Küçük harf veya , iswdigit
, iswpunct
veya iswspace
öğelerinin hiçbiri iswcntrl
sıfır olmayan, uygulama tanımlı geniş karakter kümesinden biri. iswlower
yalnızca küçük harflere karşılık gelen geniş karakterler için sıfır olmayan döndürür.
iswprint
Boşluk geniş karakteri (L' '
) dahil olmak üzere yazdırılabilir geniş karakter.
iswpunct
Hem boşluk genişliğinde bir karakter (L' '
) hem de sıfır olmayan geniş bir karakter olmayan yazdırılabilir geniş karakter iswalnum
.
iswspace
Standart boşluk karakterine karşılık gelen veya uygulama tanımlı geniş karakter kümesinden biri olan ve false olan iswalnum
geniş karakter. Standart boşluk karakterleri şunlardır: boşluk (L' '
), form akışı (L'\f'
), yeni satır (L'\n'
), satır başı (L'\r'
), yatay sekme (L'\t'
) ve dikey sekme (L'\v'
).
iswupper
Büyük harf olan veya , , iswdigit
iswpunct
veya iswspace
sıfır iswcntrl
olmayan, uygulama tanımlı geniş karakter kümesinden biri olan geniş karakter. iswupper
yalnızca büyük harflere karşılık gelen geniş karakterler için sıfır olmayan döndürür.
iswxdigit
Onaltılık basamaklı karaktere karşılık gelen geniş karakter.
Örnek
// 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" );
}
}
Çıktı
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 .
Ayrıca bkz.
Karakter sınıflandırması
Yerel ayar
setlocale
, _wsetlocale
Çok baytlı karakter dizilerinin yorumlanması
to
işlevleri