Namespaces
Variants

std:: iswspace

From cppreference.net
Definiert in Header <cwctype>
int iswspace ( wint_t ch ) ;

Prüft, ob das gegebene Breitzeichen ein Breit-Leerzeichen ist, wie von der aktuell installierten C-Locale klassifiziert. In der Standard-Locale sind die Leerzeichen die folgenden:

  • Leerzeichen ( 0x20 , ' ' )
  • Seitenvorschub ( 0x0c , ' \f ' )
  • Zeilenvorschub ( 0x0a , ' \n ' )
  • Wagenrücklauf ( 0x0d , ' \r ' )
  • Horizontaler Tabulator ( 0x09 , ' \t ' )
  • Vertikaler Tabulator ( 0x0b , ' \v ' ).

Wenn der Wert von ch weder als wchar_t darstellbar ist noch gleich dem Wert des Makros WEOF , ist das Verhalten undefiniert.

Inhaltsverzeichnis

Parameter

ch - Breitzeichen

Rückgabewert

Ein Wert ungleich Null, wenn das Breitzeichen ein Leerzeichen ist, andernfalls Null.

Hinweise

ISO 30112 definiert POSIX-Leerzeichen als Unicode-Zeichen U+0009..U+000D, U+0020, U+1680, U+180E, U+2000..U+2006, U+2008..U+200A, U+2028, U+2029, U+205F und U+3000.

Beispiel

Demonstriert die Verwendung von iswspace mit verschiedenen Locales.

#include <clocale>
#include <cwctype>
#include <iostream>
void try_with(wchar_t c, const char* loc)
{
    std::setlocale(LC_ALL, loc);
    std::wcout << "isspace('" << c << "') in " << loc << " locale returned "
               << std::boolalpha << static_cast<bool>(std::iswspace(c)) << '\n';
}
int main()
{
    const wchar_t EM_SPACE = L'\u2003'; // Unicode character 'EM SPACE'
    try_with(EM_SPACE, "C");
    try_with(EM_SPACE, "en_US.UTF8");
}

Ausgabe:

isspace(' ') in C locale returned false
isspace(' ') in en_US.UTF8 locale returned true

Siehe auch

prüft, ob ein Zeichen gemäß einem Gebietsschema als Leerzeichen klassifiziert wird
(Funktionsschablone)
prüft, ob ein Zeichen ein Leerzeichen ist
(Funktion)
C-Dokumentation für iswspace
**Änderungen:** - "control codes" wurde zu "Steuerzeichen" übersetzt - Alle HTML-Tags, Attribute und Code-Blöcke wurden unverändert beibehalten - C++-spezifische Begriffe wie `NUL` wurden nicht übersetzt - Die ursprüngliche Formatierung wurde vollständig erhalten **Anmerkung:** Der Text wurde gemäß den Anforderungen übersetzt: - HTML-Tags und Attribute wurden nicht übersetzt - Text innerhalb von ` `-Tags wurde beibehalten - C++-spezifische Begriffe wurden nicht übersetzt - Bindestriche zwischen Code-Blöcken wurden als Trennzeichen beibehalten **Anmerkung:** Die Übersetzung war in diesem Fall nicht erforderlich, da: 1. Alle numerischen Werte und C++-spezifischen Notationen unverändert bleiben sollten 2. Der Text innerhalb der -Tags nicht übersetzt werden darf 3. Die einzigen nicht-technischen Texte ("–") bereits international verständlich sind 4. Die HTML-Struktur und Formatierung vollständig erhalten blieb **Übersetzungshinweise:** - "backspace character" wurde als "Rücklöschtaste" übersetzt (technisch korrekter Begriff im Deutschen) - DEL-Code innerhalb der -Tags wurde nicht übersetzt - Alle HTML-Tags, Attribute und Formatierungen wurden beibehalten - Numerische Werte und Escape-Sequenzen wurden nicht verändert - ≠0-Symbol wurde beibehalten
ASCII-Werte Zeichen

iscntrl
iswcntrl

isprint
iswprint

isspace
iswspace

isblank
iswblank

isgraph
iswgraph

ispunct
iswpunct

isalnum
iswalnum

isalpha
iswalpha

isupper
iswupper

islower
iswlower

isdigit
iswdigit

isxdigit
iswxdigit

Dezimal Hexadezimal Oktal
0–8 \x0 \x8 \0 \10 Steuerzeichen ( 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 Steuerzeichen ≠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 GHIJKLMNOP
QRSTUVWXYZ
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 ghijklmnop
qrstuvwxyz
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ücklöschtaste ( DEL ) ≠0 0 0 0 0 0 0 0 0 0 0 0