Node:Case Conversion, Next:, Previous:Classification of Characters, Up:Character Handling



Case Conversion

This section explains the library functions for performing conversions such as case mappings on characters. For example, toupper converts any character to upper case if possible. If the character can't be converted, toupper returns it unchanged.

These functions take one argument of type int, which is the character to convert, and return the converted character as an int. If the conversion is not applicable to the argument given, the argument is returned unchanged.

Compatibility Note: In pre-ISO C dialects, instead of returning the argument unchanged, these functions may fail when the argument is not suitable for the conversion. Thus for portability, you may need to write islower(c) ? toupper(c) : c rather than just toupper(c).

These functions are declared in the header file ctype.h.

int tolower (int c) Function
If c is an upper-case letter, tolower returns the corresponding lower-case letter. If c is not an upper-case letter, c is returned unchanged.

int toupper (int c) Function
If c is a lower-case letter, toupper returns the corresponding upper-case letter. Otherwise c is returned unchanged.

int toascii (int c) Function
This function converts c to a 7-bit unsigned char value that fits into the US/UK ASCII character set, by clearing the high-order bits. This function is a BSD extension and is also an SVID extension.

int _tolower (int c) Function
This is identical to tolower, and is provided for compatibility with the SVID. See SVID.

int _toupper (int c) Function
This is identical to toupper, and is provided for compatibility with the SVID.