HPlogo HP-UX Reference Volume 4 of 5 > c

ctype(3C)

» 

Technical documentation

Complete book in PDF

 » Table of Contents

 » Index

NAME

isalpha(), isupper(), islower(), isdigit(), isxdigit(), isalnum(), isspace(), ispunct(), isprint(), isgraph(), iscntrl(), isascii() — classify characters

SYNOPSIS

#include <ctype.h>

int 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.

APPLICATION USAGE

The interfaces isalnum(), isalpha(), iscntrl(), isdigit(), isgraph(), islower(), isprint(), ispunct(), isspace(), isupper(), isxdigit() and isascii() are thread-safe and async-cancel-safe.

EXTERNAL INFLUENCES

Locale

The LC_CTYPE category determines the classification of character type.

International Code Set Support

Single-byte character code sets are supported.

WARNINGS

These functions are supplied both as library functions and as macros defined in the <ctype.h> 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 <ctype.h> #undef isalpha ... main() { int (*ctype_func)(); ... if ( isalpha(c) ) ... if ( (isdigit)(c) ) ... ctype_func = isspace; ... }

AUTHOR

ctype() was developed by IBM, OSF, and HP.

STANDARDS CONFORMANCE

isalnum(): AES, SVID2, SVID3, XPG2, XPG3, XPG4, FIPS 151-2, POSIX.1, ANSI C

isalpha(): AES, SVID2, SVID3, XPG2, XPG3, XPG4, FIPS 151-2, POSIX.1, ANSI C

isascii(): AES, SVID2, SVID3, XPG2, XPG3, XPG4

iscntrl(): AES, SVID2, SVID3, XPG2, XPG3, XPG4, FIPS 151-2, POSIX.1, ANSI C

isdigit(): AES, SVID2, SVID3, XPG2, XPG3, XPG4, FIPS 151-2, POSIX.1, ANSI C

isgraph(): AES, SVID2, SVID3, XPG2, XPG3, XPG4, FIPS 151-2, POSIX.1, ANSI C

islower(): AES, SVID2, SVID3, XPG2, XPG3, XPG4, FIPS 151-2, POSIX.1, ANSI C

isprint(): AES, SVID2, SVID3, XPG2, XPG3, XPG4, FIPS 151-2, POSIX.1, ANSI C

ispunct(): AES, SVID2, SVID3, XPG2, XPG3, XPG4, FIPS 151-2, POSIX.1, ANSI C

isspace(): AES, SVID2, SVID3, XPG2, XPG3, XPG4, FIPS 151-2, POSIX.1, ANSI C

isupper(): AES, SVID2, SVID3, XPG2, XPG3, XPG4, FIPS 151-2, POSIX.1, ANSI C

isxdigit(): AES, SVID2, SVID3, XPG2, XPG3, XPG4, FIPS 151-2, POSIX.1, ANSI C

© Hewlett-Packard Development Company, L.P.