toupper, toupper_l - transliterate lowercase characters to
uppercase int toupper(int c); [CX] int toupper_l(int c, locale_t
locale); For toupper(): [CX] The functionality described on this
reference page is aligned with the ISO C standard. Any conflict
between the requirements described here and the ISO C standard
is unintentional. This volume of POSIX.1-2008 defers to the ISO
C standard. The toupper() [CX] and toupper_l() functions have as
a domain a type int, the value of which is representable as an
unsigned char or the value of EOF. If the argument has any other
value, the behavior is undefined. If the argument of toupper()
[CX] or toupper_l() represents a lowercase letter, and there
exists a corresponding uppercase letter as defined by character
type information in the current locale [CX] or in the locale
represented by locale, respectively (category LC_CTYPE), the
result shall be the corresponding uppercase letter. All other
arguments in the domain are returned unchanged. [CX] The
behavior is undefined