ISALPHA(3) Linux Programmer's Manual ISALPHA(3)

isalnum, isalpha, isascii, isblank, iscntrl, isdigit, isgraph, islower, isprint, ispunct, isspace, isupper, isxdigit - character classification routines

#include <ctype.h>

int isalnum(int c);

int isalpha(int c);

int isascii(int c);

int isblank(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);


Feature Test Macro Requirements for glibc (see feature_test_macros(7)):

isascii():

_BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE
isblank():
_XOPEN_SOURCE >= 600 || _ISOC99_SOURCE || _POSIX_C_SOURCE >= 200112L;
or cc -std=c99

These functions check whether c, which must have the value of an unsigned char or EOF, falls into a certain character class according to the current locale.

checks for an alphanumeric character; it is equivalent to (isalpha(c) || isdigit(c)).
checks for an alphabetic character; in the standard "C" locale, it is equivalent to (isupper(c) || islower(c)). In some locales, there may be additional characters for which isalpha() is true—letters which are neither upper case nor lower case.
checks whether c is a 7-bit unsigned char value that fits into the ASCII character set.
checks for a blank character; that is, a space or a tab.
checks for a control character.
checks for a digit (0 through 9).
checks for any printable character except space.
checks for a lower-case character.
checks for any printable character including space.
checks for any printable character which is not a space or an alphanumeric character.
checks for white-space characters. In the "C" and "POSIX" locales, these are: space, form-feed ('\f'), newline ('\n'), carriage return ('\r'), horizontal tab ('\t'), and vertical tab ('\v').
checks for an uppercase letter.
checks for a hexadecimal digits, that is, one of
0 1 2 3 4 5 6 7 8 9 a b c d e f A B C D E F.

The values returned are nonzero if the character c falls into the tested class, and a zero value if not.

see_pthreads(7))">)">Multithreading (see pthreads(7))

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

C99, 4.3BSD. C89 specifies all of these functions except isascii() and isblank(). isascii() is a BSD extension and is also an SVr4 extension. isblank() conforms to POSIX.1-2001 and C99 7.4.1.3. POSIX.1-2008 marks isascii() as obsolete, noting that it cannot be used portably in a localized application.

The details of what characters belong into which class depend on the current locale. For example, isupper() will not recognize an A-umlaut (Ä) as an uppercase letter in the default C locale.

iswalnum(3), iswalpha(3), iswblank(3), iswcntrl(3), iswdigit(3), iswgraph(3), iswlower(3), iswprint(3), iswpunct(3), iswspace(3), iswupper(3), iswxdigit(3), setlocale(3), toascii(3), tolower(3), toupper(3), ascii(7), locale(7)

This page is part of release 3.62 of the Linux man-pages project. A description of the project, and information about reporting bugs, can be found at http://www.kernel.org/doc/man-pages/.

2014-01-27 GNU

Different Versions of this Page: