Standard C Library Functions                            ctype(3C)


NAME

     ctype, isalpha, isalnum, isascii, isblank, iscntrl, isdigit,
     islower, isprint, isspace, isupper, ispunct, isgraph, isxdi-
     git - character handling


SYNOPSIS

     #include <ctype.h>

     int isalpha(int c);

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


DESCRIPTION

     These macros classify character-coded integer  values.  Each
     is a predicate returning non-zero for true, 0 for false. The
     behavior of these macros, except isascii(), is  affected  by
     the  current  locale  (see  setlocale(3C)).   To  modify the

SunOS 5.11          Last change: 28 Jan 2005                    1


Standard C Library Functions                            ctype(3C)

     behavior, change the LC_TYPE category in  setlocale(),  that
     is,  setlocale(LC_CTYPE,  newlocale).  In the "C" locale, or
     in a locale where character type information is not defined,
     characters  are classified according to the rules of the US-
     ASCII 7-bit coded character set.

     The isascii() macro is defined on all  integer  values.  The
     rest  are  defined  only  where  the argument is an int, the
     value of which is representable as an unsigned char, or EOF,
     which  is  defined  by  the  <stdio.h> header and represents
     end-of-file.

     Functions exist for all the macros defined below. To get the
     function  form,  the macro name must be undefined (for exam-
     ple, #undef isdigit).

     For macros described with Default  and  Standard  conforming
     versions,   standard-conforming  behavior  is  provided  for
     standard-conforming applications (see standards(5)) and  for
     applications  that define __XPG4_CHAR_CLASS__ before includ-
     ing <ctype.h>.

  Default
     isalpha()    Tests for any character for which isupper()  or
                  islower() is true.

  Standard conforming
     isalpha()    Tests for any character for which isupper()  or
                  islower() is true, or any character that is one
                  of the current locale-defined set of characters
                  for   which   none   of  iscntrl(),  isdigit(),
                  ispunct(), or isspace() is true. In "C" locale,
                  isalpha()  returns true only for the characters
                  for which isupper() or islower() is true.

     isalnum()    Tests for any character for which isalpha()  or
                  isdigit() is true (letter or digit).

     isascii()    Tests for any ASCII character, code  between  0
                  and 0177 inclusive.

     isblank()    Tests whether c is a character of  class  blank
                  in  the current locale.  This macro/function is
                  not available  to  applications  conforming  to
                  standards prior to SUSv3. See standards(5)

SunOS 5.11          Last change: 28 Jan 2005                    2


Standard C Library Functions                            ctype(3C)

     iscntrl()    Tests for any ``control character'' as  defined
                  by the character set.

     isdigit()    Tests for any decimal-digit character.

  Default
     isgraph()    Tests for any character  for  which  ispunct(),
                  isupper(), islower(), and isdigit() is true.

  Standard conforming
     isgraph()    Tests for any character for which isalnum() and
                  ispunct()  are  true,  or  any character in the
                  current locale-defined "graph" class  which  is
                  neither  a space ("") nor a character for which
                  iscntrl() is true.

     islower()    Tests for any character that  is  a  lower-case
                  letter  or is one of the current locale-defined
                  set of characters for which none of  iscntrl(),
                  isdigit(),  ispunct(),  isspace(), or isupper()
                  is true. In the "C" locale,  islower()  returns
                  true  only for the characters defined as lower-
                  case ASCII characters.

  Default
     isprint()    Tests for any character  for  which  ispunct(),
                  isupper(),  islower(), isdigit(), and the space
                  character ("") is true.

  Standard conforming
     isprint()    Tests for any character for which iscntrl()  is
                  false, and isalnum(), isgraph(), ispunct(), the
                  space character (""), and the characters in the
                  current locale-defined "print" class are true.

     ispunct()    Tests for any printing character which is  nei-
                  ther  a  space  ("")  nor a character for which
                  isalnum() or iscntrl() is true.

     isspace()    Tests for any space, tab, carriage-return, new-
                  line,   vertical-tab   or  form-feed  (standard
                  white-space  characters)  or  for  one  of  the
                  current  locale-defined  set  of characters for
                  which isalnum() is false.  In the  "C"  locale,

SunOS 5.11          Last change: 28 Jan 2005                    3


Standard C Library Functions                            ctype(3C)

                  isspace()  returns  true  only for the standard
                  white-space characters.

     isupper()    Tests for any character that is  an  upper-case
                  letter  or is one of the current locale-defined
                  set of characters for which none of  iscntrl(),
                  isdigit(),  ispunct(),  isspace(), or islower()
                  is true. In the "C" locale,  isupper()  returns
                  true  only for the characters defined as upper-
                  case ASCII characters.

  Default
     isxdigit()    Tests  for  any  hexadecimal-digit   character
                   ([0-9], [A-F], or [a-f]).

  Standard conforming
     isxdigit()    Tests  for  any  hexadecimal-digit   character
                   ([0-9],   [A-F],   or  [a-f]  or  the  current
                   locale-defined sets of characters representing
                   the hexadecimal digits 10 to 15 inclusive). In
                   the "C" locale, only

                     0 1 2 3 4 5 6 7 8 9 A B C D E F a b c d e f

                   are included.


RETURN VALUES

     If the argument to any of the character handling  macros  is
     not  in the domain of the function, the result is undefined.
     Otherwise, the macro or function  returns  non-zero  if  the
     classification is TRUE and 0 if the classification is FALSE.


USAGE

     These macros  or  functions  can  be  used  safely  in  mul-
     tithreaded  applications,  as  long  as setlocale(3C) is not
     being called to change the locale.


ATTRIBUTES

     See attributes(5) for descriptions of the  following  attri-
     butes:

SunOS 5.11          Last change: 28 Jan 2005                    4


Standard C Library Functions                            ctype(3C)

     ____________________________________________________________
    | ATTRIBUTE TYPE                ATTRIBUTE VALUE             |
    | CSI                           Enabled                     |
    | Interface Stability           Standard                    |
    | MT-Level                      MT-Safe with exceptions     |
    |___________________________________________________________|


SEE ALSO

     setlocale(3C), stdio(3C), ascii(5), environ(5), standards(5)

SunOS 5.11          Last change: 28 Jan 2005                    5


Man(1) output converted with man2html


FhG Schily's Home VED powered