123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160 |
- .TH CTYPE 2
- .SH NAME
- isalpha, isupper, islower, isdigit, isxdigit, isalnum, isspace, ispunct, isprint, isgraph, iscntrl, isascii, toascii, _toupper, _tolower, toupper, tolower \- ASCII character classification
- .SH SYNOPSIS
- .B #include <u.h>
- .br
- .B #include <libc.h>
- .br
- .B #include <ctype.h>
- .PP
- .if t .2C
- .B isalpha(c)
- .PP
- .B isupper(c)
- .PP
- .B islower(c)
- .PP
- .B isdigit(c)
- .PP
- .B isxdigit(c)
- .PP
- .B isalnum(c)
- .PP
- .B isspace(c)
- .PP
- .B ispunct(c)
- .PP
- .B isprint(c)
- .PP
- .B isgraph(c)
- .PP
- .B iscntrl(c)
- .PP
- .B isascii(c)
- .PP
- .B _toupper(c)
- .PP
- .B _tolower(c)
- .PP
- .B toupper(c)
- .PP
- .B tolower(c)
- .PP
- .B toascii(c)
- .if t .1C
- .SH DESCRIPTION
- These macros classify
- .SM ASCII\c
- -coded integer values
- by table lookup.
- Each is a predicate returning nonzero for true,
- zero for false.
- .I Isascii
- is defined on all integer values; the rest
- are defined only where
- .I isascii
- is true and on the single non-\c
- .SM ASCII
- value
- .BR EOF ;
- see
- .IR fopen (2).
- .TP "\w'isalnum 'u"
- .I isalpha
- .I c
- is a letter, a\-z or A\-Z
- .TP
- .I isupper
- .I c
- is an upper case letter, A\-Z
- .TP
- .I islower
- .I c
- is a lower case letter, a\-z
- .TP
- .I isdigit
- .I c
- is a digit, 0\-9
- .TP
- .I isxdigit
- .I c
- is a hexadecimal digit, 0\-9 or a\-f or A\-F
- .TP
- .I isalnum
- .I c
- is an alphanumeric character, a\-z or A\-Z or 0\-9
- .TP
- .I isspace
- .I c
- is a space, horizontal tab, newline, vertical tab, formfeed, or carriage return
- (0x20, 0x9, 0xA, 0xB, 0xC, 0xD)
- .TP
- .I ispunct
- .I c
- is a punctuation character
- (one of
- .L
- !"#$%&'()*+,-./:;<=>?@[\e]^_`{|}~\fR)
- .TP
- .I isprint
- .I c
- is a printing character, 0x20 (space)
- through 0x7E (tilde)
- .TP
- .I isgraph
- .I c
- is a visible printing character, 0x21 (exclamation) through 0x7E
- (tilde)
- .TP
- .I iscntrl
- .I c
- is a delete character, 0x7F,
- or ordinary control character, 0x0 through 0x1F
- .TP
- .I isascii
- .I c
- is an
- .SM ASCII
- character, 0x0 through 0x7F
- .PP
- .I Toascii
- is not a classification macro;
- it converts its argument to
- .SM ASCII
- range by
- .IR and ing
- with 0x7F.
- .PP
- If
- .I c
- is an upper case letter,
- .I tolower
- returns the lower case version of the character;
- otherwise it returns the original character.
- .I Toupper
- is similar, returning the upper case version of a character
- or the original character.
- .I Tolower
- and
- .I toupper
- are functions;
- .I _tolower
- and
- .I _toupper
- are corresponding macros which should only be used when it
- is known that the argument is upper case or lower case, respectively.
- .SH SOURCE
- .TF /sys/src/libc/port/ctype.c
- .TP
- .B /sys/include/ctype.h
- for the macros.
- .TP
- .B /sys/src/libc/port/ctype.c
- for the tables.
- .SH "SEE ALSO
- .IR isalpharune (2)
- .SH BUGS
- These macros are
- .SM ASCII \c
- -centric.
|