Provided by: manpages-dev_4.04-2_all bug

NAME

       toupper, tolower, toupper_l, tolower_l - convert uppercase or lowercase

SYNOPSIS

       #include <ctype.h>

       int toupper(int c);
       int tolower(int c);

       int toupper_l(int c, locale_t locale);
       int tolower_l(int c, locale_t locale);

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

       toupper_l(), tolower_l():
           Since glibc 2.10:
                  _XOPEN_SOURCE >= 700
           Before glibc 2.10:
                  _GNU_SOURCE

DESCRIPTION

       These functions convert lowercase letters to uppercase, and vice versa.

       If  c  is  a lowercase letter, toupper() returns its uppercase equivalent, if an uppercase representation
       exists in the current locale.  Otherwise, it returns c.  The toupper_l() function performs the same task,
       but uses the locale referred to by the locale handle locale.

       If  c  is  a  uppercase letter, tolower() returns its lowercase equivalent, if a lowercase representation
       exists in the current locale.  Otherwise, it returns c.  The tolower_l() function performs the same task,
       but uses the locale referred to by the locale handle locale.

       If c is neither an unsigned char value nor EOF, the behavior of these functions is undefined.

       The  behavior  of  toupper_l()  and  tolower_l()  is  undefined  if  locale  is the special locale object
       LC_GLOBAL_LOCALE (see duplocale(3)) or is not a valid locale object handle.

RETURN VALUE

       The value returned is that of the converted letter, or c if the conversion was not possible.

ATTRIBUTES

       For an explanation of the terms used in this section, see attributes(7).

       ┌─────────────────────────┬───────────────┬─────────┐
       │InterfaceAttributeValue   │
       ├─────────────────────────┼───────────────┼─────────┤
       │toupper(), tolower(),    │ Thread safety │ MT-Safe │
       │toupper_l(), tolower_l() │               │         │
       └─────────────────────────┴───────────────┴─────────┘

CONFORMING TO

       toupper(), tolower(): C89, C99, 4.3BSD, POSIX.1-2001, POSIX.1-2008.

       toupper_l(), tolower_l(): POSIX.1-2008.

NOTES

       The details of what constitutes an uppercase or lowercase letter depend on the locale.  For example,  the
       default "C" locale does not know about umlauts, so no conversion is done for them.

       In  some non-English locales, there are lowercase letters with no corresponding uppercase equivalent; the
       German sharp s is one example.

SEE ALSO

       isalpha(3), newlocale(3), setlocale(3), uselocale(3), towlower(3), towupper(3), locale(7)

COLOPHON

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