Namespaces
Variants

std:: iswspace

From cppreference.net
Défini dans l'en-tête <cwctype>
int iswspace ( wint_t ch ) ;

Vérifie si le caractère large donné est un caractère large d'espacement tel que classifié par les paramètres régionaux C actuellement installés. Dans les paramètres régionaux par défaut, les caractères d'espacement sont les suivants :

  • Espace ( 0x20 , ' ' )
  • Saut de page ( 0x0c , ' \f ' )
  • Saut de ligne ( 0x0a , ' \n ' )
  • Retour chariot ( 0x0d , ' \r ' )
  • Tabulation horizontale ( 0x09 , ' \t ' )
  • Tabulation verticale ( 0x0b , ' \v ' ).

Si la valeur de ch n'est ni représentable comme un wchar_t ni égale à la valeur de la macro WEOF , le comportement est indéfini.

Table des matières

Paramètres

ch - caractère large

Valeur de retour

Valeur non nulle si le caractère large est un caractère d'espacement, zéro sinon.

Notes

ISO 30112 définit les caractères d'espacement POSIX comme les caractères Unicode U+0009..U+000D, U+0020, U+1680, U+180E, U+2000..U+2006, U+2008..U+200A, U+2028, U+2029, U+205F et U+3000.

Exemple

Démontre l'utilisation de iswspace avec différentes 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");
}

Sortie :

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

Voir aussi

vérifie si un caractère est classé comme espace blanc par une locale
(modèle de fonction)
vérifie si un caractère est un caractère d'espacement
(fonction)
Documentation C pour iswspace
**Note:** Le contenu fourni ne contient aucun texte traduisible en dehors des balises ` `. Tous les éléments numériques, caractères spéciaux et notations techniques sont préservés conformément aux instructions. **Note:** Aucun texte n'a été traduit car : - Les nombres (71–90) et les caractères ASCII (GHIJKLMNOP, QRSTUVWXYZ) ne nécessitent pas de traduction - Tous les autres éléments sont dans des balises ` ` ou représentent des valeurs numériques/techniques - Les symboles mathématiques (≠0) sont universels en programmation **Note:** Le texte à traduire dans ce fragment HTML est très limité - seules les valeurs numériques "123–126" et les symboles "–" (tirets) pourraient potentiellement être traduits, mais dans ce contexte technique, ils représentent des plages de valeurs et doivent rester inchangés pour préserver la signification technique. Aucune traduction n'a donc été effectuée, conformément aux exigences de précision et de préservation du contenu technique.
Valeurs ASCII Caractères

iscntrl
iswcntrl

isprint
iswprint

isspace
iswspace

isblank
iswblank

isgraph
iswgraph

ispunct
iswpunct

isalnum
iswalnum

isalpha
iswalpha

isupper
iswupper

islower
iswlower

isdigit
iswdigit

isxdigit
iswxdigit

décimal hexadécimal octal
0–8 \x0 \x8 \0 \10 codes de contrôle ( NUL , etc.) ≠0 0 0 0 0 0 0 0 0 0 0 0
9 \x9 \11 tabulation ( \t ) ≠0 0 ≠0 ≠0 0 0 0 0 0 0 0 0
10–13 \xA \xD \12 \15 espaces blancs ( \n , \v , \f , \r ) ≠0 0 ≠0 0 0 0 0 0 0 0 0 0
14–31 \xE \x1F \16 \37 codes de contrôle ≠0 0 0 0 0 0 0 0 0 0 0 0
32 \x20 \40 espace 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 caractère d'effacement ( DEL ) ≠0 0 0 0 0 0 0 0 0 0 0 0