Accès rapide :
Les fonctions de tests de caractères
Les fonctions de transformations de caractères
Comparaisons entre ces différentes fonctions
Cette librairie propose un ensemble de fonction de traitement de caractères. On peut classifier cet ensemble de fonctions en deux catégories : les fonctions de tests, pour savoir si un caractère est d'une certaine nature, et les fonctions de transformations, notamment utilent pour les changement de casses (minuscules, majuscules).
Attention : ces fonctions supportent uniquement la table d'encodage ASCII (American Standard Coding for Information Interchange). Cette table ne définie que 128 caratcères (de code 0 à 127). Ainsi, un caractère « é » (définit dans les standards ISO-8859-1, UTF-8, UTF-16, ...) ne sera pas pris en compte : il n'est donc pas un caractère alpha-numérique.
Ces fonctions sont très facile à identifier : elles sont toutes préfixées de is
. Elles renvoient toutes une valeur entière typée int
, mais vous devrait interpréter cette
valeur en temps que booléen (true
/ false
). Voici la liste des fonctions de cette catégorie.
Nom | Type | Description | Depuis |
---|---|---|---|
isalnum | fonction | Vérifie si un caractère est alpha-numérique. | C89 |
isalpha | fonction | Vérifie si un caractère est alphabétique. | C89 |
isblank | fonction | Vérifie si un caractère est blanc ou non. | C89 |
iscntrl | fonction | Vérifie si l'on a à faire à un caractère de contrôle. | C89 |
isdigit | fonction | Vérifie si un caractère est un chiffre. | C89 |
isgraph | fonction | Vérifie si un caractère posséde une représentation graphique. | C89 |
islower | fonction | Vérifie si un caractère est une lettre minuscule. | C89 |
isprint | fonction | Vérifie si un caractère est affichable (printable) ou non. | C89 |
ispunct | fonction | Vérifie si l'on a à faire à un caractère de ponctuation. | C89 |
isspace | fonction | Vérifie si l'on a à faire à un caractère d'espacement. | C89 |
isupper | fonction | Vérifie si un caractère est une lettre majuscule. | C89 |
isxdigit | fonction | Vérifie si un caractère est un chiffre hexadécimal. | C89 |
Nom | Type | Description | Depuis |
---|---|---|---|
tolower | fonction | Transforme une lettre majuscule en une minuscule. | C89 |
toupper | fonction | Transforme une lettre minuscule en une majuscule. | C89 |
Afin de mieux comprendre les différences entre les fonctions de tests proposées, nous vous invitons à analyser le tableaux suivants. Il indique, via un code couleur (vert = true
et
rouge = false
) le résultat de chaque fonction pour chacune des plages de caractères proposées.
Codes ASCII | Plage de caractères | iscntrl | isblank | isspace | isupper | islower | isalpha | isdigit | isxdigit | isalnum | ispunct | isgraph | isprint |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0x00..0x08 | Caractères de contrôles | x | |||||||||||
0x09 | Caractère de contrôle (tab) | x | x | x | |||||||||
0x0A..0x0D | Caractères de contrôles (white spaces : '\f' , '\v' , '\n' , '\r' ) |
x | x | ||||||||||
0x0E..0x1F | Caractères de contrôles | x | |||||||||||
0x20 | L'espace | x | x | x | |||||||||
0x21..0x2F | !"#$%&'()*+,-./ |
x | x | x | |||||||||
0x30..0x39 | 0123456789 |
x | x | x | x | x | |||||||
0x3a..0x40 | :;<=>?@ |
x | x | x | |||||||||
0x41..0x46 | ABCDEF |
x | x | x | x | x | x | ||||||
0x47..0x5A | GHIJKLMNOPQRSTUVWXYZ |
x | x | x | x | x | |||||||
0x5B..0x60 | [\]^_` |
x | x | x | |||||||||
0x61..0x66 | abcdef |
x | x | x | x | x | x | ||||||
0x67..0x7A | ghijklmnopqrstuvwxyz |
x | x | x | x | x | |||||||
0x7B..0x7E | {|}~ |
x | x | x | |||||||||
0x7F | DEL | x |
Améliorations / Corrections
Vous avez des améliorations (ou des corrections) à proposer pour ce document : je vous remerçie par avance de m'en faire part, cela m'aide à améliorer le site.
Emplacement :
Description des améliorations :