Namespaces
Variants

std:: iswalnum

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

Vérifie si le caractère large donné est un caractère alphanumérique, c'est-à-dire soit un chiffre ( 0123456789 ), une lettre majuscule ( ABCDEFGHIJKLMNOPQRSTUVWXYZ ), une lettre minuscule ( abcdefghijklmnopqrstuvwxyz ) ou tout caractère alphanumérique spécifique aux paramètres régionaux 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 est un caractère alphanumérique, zéro sinon.

Notes

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

Exemple

#include <clocale>
#include <cwctype>
#include <iostream>
int main()
{
    wchar_t c = L'\u13ad'; // the Cherokee letter HA ('Ꭽ')
    std::cout << std::hex << std::showbase << std::boolalpha;
    std::cout << "in the default locale, iswalnum(" << (std::wint_t)c << ") = "
              << (bool)std::iswalnum(c) << '\n';
    std::setlocale(LC_ALL, "en_US.utf8");
    std::cout << "in Unicode locale, iswalnum(" << (std::wint_t)c << ") = "
              << (bool)std::iswalnum(c) << '\n';
}

Sortie possible :

in the default locale, iswalnum(0x13ad) = false
in Unicode locale, iswalnum(0x13ad) = true

Voir aussi

vérifie si un caractère est classé comme alphanumérique par une locale
(modèle de fonction)
vérifie si un caractère est alphanumérique
(fonction)
Documentation C pour iswalnum
**Note:** Aucun texte n'a été traduit car : - Les nombres et codes hexadécimaux/octaux ne doivent pas être traduits - Le texte dans les balises ` ` est préservé - Les termes C++ spécifiques ne sont pas traduits - Il n'y avait pas de texte libre en dehors des balises de code dans cet extrait **Note:** Aucun texte n'a été traduit car : - Les nombres et codes hexadécimaux/octaux (71–90, \x47, \x5A, \107, \132) sont des valeurs techniques - Les chaînes de caractères dans les balises (GHIJKLMNOP, QRSTUVWXYZ) sont préservées - Les symboles mathématiques (≠0) et chiffres (0) ne nécessitent pas de traduction - Aucun texte en langage naturel n'était présent en dehors des balises techniques **Note:** Le contenu HTML fourni ne contient aucun texte traduisible en dehors des balises ` `. Les seuls éléments textuels sont : - Les plages numériques "123–126" (qui ne nécessitent pas de traduction) - Les caractères "–" (qui sont des séparateurs) - Les symboles "≠0" (notation mathématique standard) Tous les autres éléments sont soit des codes C++, soit des valeurs numériques, soit contenus dans des balises ` ` qui doivent être préservés selon vos instructions.
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