Namespaces
Variants

isalpha

From cppreference.net
< c ‎ | string ‎ | byte
Défini dans l'en-tête <ctype.h>
int isalpha ( int ch ) ;

Vérifie si le caractère donné est un caractère alphabétique, c'est-à-dire soit une lettre majuscule ( ABCDEFGHIJKLMNOPQRSTUVWXYZ ), soit une lettre minuscule ( abcdefghijklmnopqrstuvwxyz ).

Dans les paramètres régionaux autres que "C" , un caractère alphabétique est un caractère pour lequel isupper() ou islower() renvoie true ou tout autre caractère considéré comme alphabétique par les paramètres régionaux. Dans tous les cas, iscntrl() , isdigit() , ispunct() et isspace() renverront false pour ce caractère.

Le comportement n'est pas défini si la valeur de ch n'est pas représentable comme unsigned char et n'est pas égale à EOF .

Table des matières

Paramètres

ch - caractère à classifier

Valeur de retour

Valeur non nulle si le caractère est un caractère alphabétique, zéro sinon.

Exemple

Illustre l'utilisation de isalpha avec différentes locales (spécifiques au système d'exploitation).

#include <ctype.h>
#include <locale.h>
#include <stdio.h>
int main(void)
{
    unsigned char c = '\xdf'; // German letter ß in ISO-8859-1
    printf("isalpha('\\xdf') in default C locale returned %d\n", !!isalpha(c));
    setlocale(LC_CTYPE, "de_DE.iso88591");
    printf("isalpha('\\xdf') in ISO-8859-1 locale returned %d\n", !!isalpha(c));
}

Sortie possible :

isalpha('\xdf') in default C locale returned 0
isalpha('\xdf') in ISO-8859-1 locale returned 1

Références

  • Norme C23 (ISO/CEI 9899:2024) :
  • 7.4.1.2 La fonction isalpha (p: TBD)
  • Norme C17 (ISO/CEI 9899:2018) :
  • 7.4.1.2 La fonction isalpha (p: 145)
  • Norme C11 (ISO/IEC 9899:2011) :
  • 7.4.1.2 La fonction isalpha (p: 200-201)
  • Norme C99 (ISO/IEC 9899:1999) :
  • 7.4.1.2 La fonction isalpha (p: 181-182)
  • Norme C89/C90 (ISO/IEC 9899:1990) :
  • 4.3.1.2 Fonction isalpha

Voir aussi

vérifie si un caractère large est alphabétique
(fonction)
Documentation C++ pour isalpha
**Note:** Aucun texte n'a été traduit car : - Les nombres (48–57) et caractères (\x30, \x39, etc.) sont des valeurs techniques - Le texte dans les balises ` ` est préservé - Les symboles mathématiques (≠0) ne sont pas traduits - Il n'y avait pas de texte libre à traduire en dehors des éléments techniques **Note:** Aucune traduction n'a été effectuée car : - Le texte "71–90" représente une plage numérique qui reste identique en français - Tous les autres contenus textuels se trouvent dans des balises ` ` qui doivent être préservées - Les symboles "–" et "≠0" sont des notations techniques universelles - La structure HTML et les attributs ont été 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