Defined in header <ctype.h> | ||
|---|---|---|
int isupper( int ch ); |
Checks if the given character is an uppercase character according to the current C locale. In the default "C" locale, isupper returns true only for the uppercase letters (ABCDEFGHIJKLMNOPQRSTUVWXYZ).
If isupper returns true, it is guaranteed that iscntrl, isdigit, ispunct, and isspace return false for the same character in the same C locale.
The behavior is undefined if the value of ch is not representable as unsigned char and is not equal to EOF.
| ch | - | character to classify |
Non-zero value if the character is an uppercase letter, zero otherwise.
#include <stdio.h>
#include <ctype.h>
#include <locale.h>
int main(void)
{
unsigned char c = '\xc6'; // letter Æ in ISO-8859-1
printf("In the default C locale, \\xc6 is %suppercase\n",
isupper(c) ? "" : "not " );
setlocale(LC_ALL, "en_GB.iso88591");
printf("In ISO-8859-1 locale, \\xc6 is %suppercase\n",
isupper(c) ? "" : "not " );
}Possible output:
In the default C locale, \xc6 is not uppercase In ISO-8859-1 locale, \xc6 is uppercase
|
(C95) | checks if a wide character is an uppercase character (function) |
C++ documentation for isupper |
|
| ASCII values | characters |
| |||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| decimal | hexadecimal | octal | |||||||||||||
| 0–8 | \x0–\x8 | \0–\10 | control codes (NUL, etc.) |
≠0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
| 9 | \x9 | \11 | tab (\t) |
≠0 | 0 |
≠0 |
≠0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
| 10–13 | \xA–\xD | \12–\15 | whitespaces (\n, \v, \f, \r) |
≠0 | 0 |
≠0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
| 14–31 | \xE–\x1F | \16–\37 | control codes |
≠0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
| 32 | \x20 | \40 | space | 0 |
≠0 |
≠0 |
≠0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
| 33–47 | \x21–\x2F | \41–\57 | !"#$%&'()*+,-./ | 0 |
≠0 | 0 | 0 |
≠0 |
≠0 | 0 | 0 | 0 | 0 | 0 | 0 |
| 48–57 | \x30–\x39 | \60–\71 | 0123456789 | 0 |
≠0 | 0 | 0 |
≠0 | 0 |
≠0 | 0 | 0 | 0 |
≠0 |
≠0 |
| 58–64 | \x3A–\x40 | \72–\100 | :;<=>?@ | 0 |
≠0 | 0 | 0 |
≠0 |
≠0 | 0 | 0 | 0 | 0 | 0 | 0 |
| 65–70 | \x41–\x46 | \101–\106 | ABCDEF | 0 |
≠0 | 0 | 0 |
≠0 | 0 |
≠0 |
≠0 |
≠0 | 0 | 0 |
≠0 |
| 71–90 | \x47–\x5A | \107–\132 | GHIJKLMNOPQRSTUVWXYZ | 0 |
≠0 | 0 | 0 |
≠0 | 0 |
≠0 |
≠0 |
≠0 | 0 | 0 | 0 |
| 91–96 | \x5B–\x60 | \133–\140 | [\]^_` | 0 |
≠0 | 0 | 0 |
≠0 |
≠0 | 0 | 0 | 0 | 0 | 0 | 0 |
| 97–102 | \x61–\x66 | \141–\146 | abcdef | 0 |
≠0 | 0 | 0 |
≠0 | 0 |
≠0 |
≠0 | 0 |
≠0 | 0 |
≠0 |
| 103–122 | \x67–\x7A | \147–\172 | ghijklmnopqrstuvwxyz | 0 |
≠0 | 0 | 0 |
≠0 | 0 |
≠0 |
≠0 | 0 |
≠0 | 0 | 0 |
| 123–126 | \x7B–\x7E | \172–\176 | {|}~ | 0 |
≠0 | 0 | 0 |
≠0 |
≠0 | 0 | 0 | 0 | 0 | 0 | 0 |
| 127 | \x7F | \177 | backspace character (DEL) |
≠0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/w/c/string/byte/isupper