é isw rotinas
Comentários
Essas rotinas teste caracteres para condições especificadas.
The é rotinas produzirem resultados significativos de qualquer argumento de número inteiro de – 1 (EOF) a UCHAR_MAX (0xFF), inclusive.O tipo de argumento esperado é int.
Cuidado: |
---|
Para o é rotinas, passando um argumento do tipo char pode levar a resultados imprevisíveis. Um caractere de byte único SBCS ou MBCS do tipo char com um valor maior que 0x7F é negativo. If a char é passado, o compilador pode converter o valor em uma assinatura int ou um assinado longo.Este valor pode ser estendido sinal pelo compilador, com resultados inesperados. |
The isw rotinas produzirem resultados significativos para qualquer valor inteiro de – 1 (WEOF) a 0xFFFF, inclusive.The wint_t tipo de dados é definido no WCHAR.H sistema autônomo um unsigned short; pode conter qualquer caractere largo ou o caractere largo participante de arquivo (WEOF) valor.
O valor de saída é afetado pela configuração do LC_CTYPE categoria de configuração da localidade; consulte setlocale para obter mais informações.As versões dessas funções sem o _l sufixo use a localidade corrente para esse comportamento dependente de localidade; as versões com o _l sufixo são idênticas exceto que usarem o parâmetro de localidade passado em vez disso.
Na localidade "C", o teste de condições para aé rotinas são sistema autônomo segue:
isalnum
Alfanuméricos (A – Z, a – z ou 0 – 9).isalpha
Alfabética (A – Z ou a – z).__isascii
Caractere ASCII (0 x 00 – 0x7F).iscntrl
Caractere de controle (0 x 00 – 0x1F ou 0x7F).__iscsym
Letra, sublinhado ou dígito.__iscsymf
Letra ou sublinhado.isdigit
Dígitos Decimal (0 – 9).isgraph
Caractere imprimível, exceto pelo fato de espaço ().islower
Letra em minúsculas (a – z).isprint
Caractere imprimível, incluindo espaço (0 x 20 – 0x7E).ispunct
Caractere de pontuação.isspace
Caractere de espaço em branco (0x09 – 0x0D ou 0 x 20).isupper
Letra maiúscula (A – Z).isxdigit
Dígito hexadecimal (A – F, a opção – f ou 0 – 9).
O isw rotinas, o resultado do teste para a condição especificada é independente da localidade.sistema autônomo condições de teste para o isw funções são:
iswalnum
iswalpha ou iswdigit.iswalpha
Qualquer caractere largo ou seja, uma de um conjunto definido de implementação para que nenhum dos iswcntrl, iswdigit, iswpunct, ou iswspace é diferente de zero. iswalpha Retorna somente para caracteres largos diferente de zero para o qual iswupper ou iswlower é diferente de zero.iswascii
Representação de caracteres largos de caractere ASCII (0 x 0000 – 0x007F).iswcntrl
Caractere de largura do controle.__iswcsym
Qualquer caractere largo para o qual isalnum for verdadeira, ou o caractere '_'.__iswcsymf
Qualquer caractere largo para o qual iswalpha for verdadeira, ou o caractere '_'.iswctype
Caractere tem a propriedade especificada pelo desc argumento. Para cada valor válido do desc argumento de iswctype, lá é uma rotina de classificação de caractere largos equivalente, conforme mostrado na tabela a seguir:Equivalência de iswctype) c, desc ) para Outros teste rotinas isw
Valor de desc. argumento
iswctype (c, desc ) equivalente a
_ALFA
iswalpha( c )
_ALFA | _DIGIT
iswalnum( c )
_CONTROL
iswcntrl( c )
_DIGIT
iswdigit( c )
_ALFA | _DIGIT | _PUNCT
iswgraph( c )
_LOWER
iswlower( c )
_ALFA | _BLANK | _DIGIT | _PUNCT
iswprint( c )
_PUNCT
iswpunct( c )
_SPACE
iswspace( c )
_UPPER
iswupper( c )
_HEX
iswxdigit( c )
iswdigit
Caractere largo correspondente a um caractere de dígito decimal.iswgraph
Caractere imprimível ampla, exceto o caractere largo de espaço (L ' ').iswlower
Letra em minúsculas ou uma das definidos para implementação conjunto de caracteres largos para que nenhum dos iswcntrl, iswdigit, iswpunct, ou iswspace é diferente de zero. iswlower Retorna diferente de zero somente para caracteres largos que correspondem a letras em minúsculas.iswprint
Caractere imprimível ampla, incluindo espaço caractere largo (L ' ').iswpunct
Caractere imprimível ampla que seja nenhum espaço caractere largo (L ' ') nem caractere largo para o qual iswalnum é diferente de zero.iswspace
Largura de caractere que corresponde ao caractere de espaço em branco padrão ou é um elemento de conjunto definido de implementação de caracteres largos que iswalnum é falso. Caracteres de espaço em branco padrão são: espaço (L ' '), formfeed (L '\f'), nova linha (L '\n'), retorno de carro (L '\r'), guia horizontal (L '\t') e vertical da guia (L '\v').iswupper
Largura de caractere ou seja maiúsculas ou é um de um conjunto definido de implementação de caracteres largos para que nenhum dos iswcntrl, iswdigit, iswpunct, ou iswspace é diferente de zero. iswupper Retorna diferente de zero somente para caracteres largos que corresponde a caracteres maiúsculos.iswxdigit
Caractere largo que corresponde a um caractere de dígito hexadecimal.
Exemplo
// 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" );
}
}
Saída
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 .