Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Convert character to uppercase.
Syntax
int toupper(
   int c
);
int _toupper(
   int c
);
int towupper(
   wint_t c
);
int _toupper_l(
   int c ,
   _locale_t locale
);
int _towupper_l(
   wint_t c ,
   _locale_t locale
);
Parameters
c
Character to convert.
locale
Locale to use.
Return value
Each of these routines converts a copy of c, if possible, and returns the result.
If c is a wide character for which iswlower is nonzero and there's a corresponding wide character for which iswupper is nonzero, towupper returns the corresponding wide character; otherwise, towupper returns c unchanged.
There's no return value reserved to indicate an error.
Remarks
Each of these routines converts a given lowercase letter to an uppercase letter if possible and appropriate. The case conversion of towupper is locale-specific. Only the characters relevant to the current locale are changed in case. The functions without the _l suffix use the currently set locale. The versions of these functions with the _l suffix take the locale as a parameter and use that instead of the currently set locale. For more information, see Locale.
For toupper to give the expected results, __isascii must return nonzero.
By default, this function's global state is scoped to the application. To change this behavior, see Global state in the CRT.
Generic-text routine mappings
| TCHAR.Hroutine | _UNICODEand_MBCSnot defined | _MBCSdefined | _UNICODEdefined | 
|---|---|---|---|
| _totupper | toupper | _mbctoupper | towupper | 
| _totupper_l | _toupper_l | _mbctoupper_l | _towupper_l | 
Note
_toupper_l and _towupper_l have no locale dependence and are not meant to be called directly. They are provided for internal use by _totupper_l.
Requirements
| Routine | Required header | 
|---|---|
| toupper | <ctype.h> | 
| _toupper | <ctype.h> | 
| towupper | <ctype.h> or <wchar.h> | 
For more compatibility information, see Compatibility.
Example
See the example in to functions.
See also
is, isw routines
to functions
Locale
Interpretation of multibyte-character sequences