Namespaces
Variants

iswalnum

From cppreference.net
< c ‎ | string ‎ | wide
Défini dans l'en-tête <wctype.h>
int iswalnum ( wint_t ch ) ;
(depuis C95)

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 à la locale actuelle.

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 <stdio.h>
#include <locale.h>
#include <wchar.h>
#include <wctype.h>
int main(void)
{
    wchar_t c = L'\u13ad'; // the Cherokee letter HA ('Ꭽ')
    printf("in the default locale, iswalnum(%#x) = %d\n", c, !!iswalnum(c));
    setlocale(LC_ALL, "en_US.utf8");
    printf("in Unicode locale, iswalnum(%#x) = %d\n", c, !!iswalnum(c));
}

Sortie possible :

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

Références

  • Norme C23 (ISO/IEC 9899:2024) :
  • À déterminer La fonction iswalnum (p: À déterminer)
  • Norme C17 (ISO/CEI 9899:2018) :
  • 7.30.2.1.1 La fonction iswalnum (p: 327)
  • Norme C11 (ISO/CEI 9899:2011) :
  • 7.30.2.1.1 La fonction iswalnum (p: 448)
  • Norme C99 (ISO/IEC 9899:1999) :
  • 7.25.2.1.1 La fonction iswalnum (p: 394)

Voir aussi

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 (`≠0`) restent inchangés - Les valeurs numériques et caractères ne sont pas traduits - La structure HTML et les attributs sont conservés intacts **Note:** Aucun texte n'a été traduit car : - Les nombres (71-90) et les plages de caractères restent inchangés - Le contenu des balises ` ` est préservé - Les symboles mathématiques (≠0) ne sont pas traduits - La structure HTML et les attributs sont maintenus intacts **Note:** Aucun texte n'a nécessité de traduction dans cet extrait HTML car : - Les nombres et codes hexadécimaux/octaux ne sont pas traduits - Le texte dans les balises ` ` est préservé - Les caractères alphabétiques "ghijklmnop qrstuvwxyz" font partie de données techniques - Les symboles mathématiques "≠0" ne sont pas traduits - La structure HTML et les attributs sont conservés intacts
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 \173 \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