Namespaces
Variants

std:: iswgraph

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

Vérifie si le caractère large donné a une représentation graphique, c'est-à-dire s'il s'agit soit d'un chiffre ( 0123456789 ), d'une lettre majuscule ( ABCDEFGHIJKLMNOPQRSTUVWXYZ ), d'une lettre minuscule ( abcdefghijklmnopqrstuvwxyz ), d'un caractère de ponctuation ( !"#$%&'()*+,-./:;<=>?@[\]^_`{|}~ ) ou de tout caractère graphique spécifique aux paramètres régionaux C actuels.

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 possède un caractère de représentation graphique, zéro sinon.

Notes

ISO 30112 spécifie quels caractères Unicode sont inclus dans la catégorie graphique POSIX.

Exemple

#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';
}

Sortie :

in the default locale, iswgraph(0x2602) = false
in Unicode locale, iswgraph(0x2602) = true

Voir aussi

vérifie si un caractère est classifié comme graphique par une locale
(modèle de fonction)
vérifie si un caractère est un caractère graphique
(fonction)
Documentation C pour iswgraph
**Note:** Aucun texte n'a été traduit car : - Les nombres (48–57) et caractères (\x30, \x39, \60, \71, 0123456789) sont des valeurs techniques - Les symboles ≠0 sont des notations mathématiques - Tous les textes se trouvent à l'intérieur de balises ou sont des valeurs numériques - Aucun texte en langage naturel n'était présent en dehors des balises techniques **Note:** Aucune traduction n'a été effectuée car : - Le texte "71–90" est une plage numérique qui ne nécessite pas de traduction - Tous les autres contenus textuels se trouvent dans des balises ` ` qui doivent être préservées selon les instructions - Les symboles "–" et "≠0" sont des notations techniques qui ne se traduisent pas **Note:** Aucun texte n'a nécessité de traduction dans ce fragment HTML car : - Les nombres et codes C++ sont conservés tels quels - Les symboles mathématiques (≠) ne sont pas traduits - Le seul texte potentiellement traduisible "–" (tiret) est déjà correct en français - Toutes les balises et attributs HTML sont préservés
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