std::iswgraph
Von cppreference.com
| Definiert in Header <cwctype> |
||
| int iswgraph( std::wint_t ch ); |
||
Prüft, ob das gegebene breite Zeichen eine grafische Darstellung hat, d. h. ob es sich um eine Zahl (0123456789), einen Großbuchstaben (ABCDEFGHIJKLMNOPQRSTUVWXYZ), einen Kleinbuchstaben (abcdefghijklmnopqrstuvwxyz), ein Satzzeichen (!"#$%&'()*+,-./:;<=>?@[\]^_`{|}~) oder ein beliebiges grafisches Zeichen handelt, das für die aktuelle C-Locale spezifisch ist.
Wenn der Wert von ch weder als wchar_t darstellbar ist noch gleich dem Wert des Makros WEOF ist, ist das Verhalten undefiniert.
Inhalt |
[bearbeiten] Parameter
| ch | - | Wide-Zeichen |
[bearbeiten] Rückgabewert
Ein von Null verschiedener Wert, wenn das breite Zeichen eine grafische Darstellung hat, andernfalls Null.
[bearbeiten] Anmerkungen
ISO 30112 spezifiziert, welche Unicode-Zeichen in die POSIX-Grafikkategorie aufgenommen werden.
[bearbeiten] Beispiel
Führen Sie diesen Code aus
#include <clocale> #include <cwctype> #include <iostream> int main() { wchar_t c = L'\u2602'; // the Unicode character Umbrella ('☂') std::cout << std::hex << std::showbase << std::boolalpha << "in the default locale, iswgraph(" << static_cast<std::wint_t>(c) << ") = " << static_cast<bool>(std::iswgraph(c)) << '\n'; std::setlocale(LC_ALL, "en_US.utf8"); std::cout << "in Unicode locale, iswgraph(" << static_cast<std::wint_t>(c) << ") = " << static_cast<bool>(std::iswgraph(c)) << '\n'; }
Ausgabe
in the default locale, iswgraph(0x2602) = false in Unicode locale, iswgraph(0x2602) = true
[bearbeiten] Siehe auch
| prüft, ob ein Zeichen von einer Locale als grafisch klassifiziert wird (Funktionstemplate) | |
| prüft, ob ein Zeichen ein grafisches Zeichen ist (Funktion) | |
| C-Dokumentation für iswgraph
| |
| ASCII-Werte | Zeichen |
isgraph |
|||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| dezimal | hexadezimal | oktal | |||||||||||||
| 0–8 | \x0–\x8 |
\0–\10 |
Steuercodes (NUL, etc.) |
≠0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
| 9 | \x9
|
\11
|
Tabulator (\t) |
≠0
|
0
|
≠0
|
≠0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
| 10–13 | \xA–\xD |
\12–\15 |
Leerzeichen (\n, \v, \f, \r) |
≠0
|
0
|
≠0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
| 14–31 | \xE–\x1F |
\16–\37 |
Steuercodes | ≠0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
| 32 | \x20
|
\40
|
Leerzeichen | 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
|
Rücktaste (DEL) |
≠0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|