NAME isalpha(), isupper(), islower(), isdigit(), isxdigit(), isalnum(), isspace(), ispunct(), isprint(), isgraph(), iscntrl(), isascii() - classify characters SYNOPSIS #includeint isalnum(int c); int isalpha(int c); int iscntrl(int c); int isdigit(int c); int isgraph(int c); int islower(int c); int isprint(int c); int ispunct(int c); int isspace(int c); int isupper(int c); int isxdigit(int c); int isascii(int c); DESCRIPTION These functions classify character-coded integer values according to the rules of the coded character set identified by the last successful call to setlocale() (see setlocale(3C)). Each function is a predicate returning non-zero for true, zero for false. If setlocale() has not been called successfully, characters are classified according to the rules of the default ASCII 7-bit coded character set (see setlocale(3C)). isascii() is defined on all integer values; the other functions are defined for the range -1 (EOF) through 255. The functions return non-zero under the following circumstances; zero otherwise: isalpha(c) c is a letter. isupper(c) c is an uppercase letter. islower(c) c is a lowercase letter. isdigit(c) c is a decimal digit (in ASCII: characters [0- 9]). isxdigit(c) c is a hexadecimal digit (in ASCII: characters [0-9], [A-F] or [a-f]). isalnum(c) c is an alphanumeric (letters or digits). isspace(c) c is a character that creates ``white space'' in displayed text (in ASCII: space, tab, carriage return, new-line, vertical tab, and form-feed). ispunct(c) c is a punctuation character (in ASCII: any printing character except the space character (040), digits, letters). isprint(c) c is a printing character. isgraph(c) c is a visible character (in ASCII: printing characters, excluding the space character (040)). iscntrl(c) c is a control character (in ASCII: character codes less than 040 and the delete character (0177)). isascii(c) c is any ASCII character code between 0 and 0177, inclusive. If the argument to any of these functions is outside the domain of the function, the result is undefined. WARNINGS These functions are supplied both as library functions and as macros defined in the header. Normally, the macro versions are used. To obtain the library function, either use a #undef to remove the macro definition or, if compiling in ANSI-C mode, enclose the function name in parenthesis or take its address. The following example uses the library functions for isalpha(), isdigit(), and isspace(): #include #undef isalpha ... main() { int (*ctype_func)(); ... if ( isalpha(c) ) ... if ( (isdigit)(c) ) ... ctype_func = isspace; ... }