ISXDIGIT |
Est-ce un chiffre hexadécimal ? |
---|---|
Langage C++ | cctype (ctype.h) |
Syntaxe
int isxdigit(int caractere) |
Paramètres
Nom | Description |
---|---|
caractere | Ce paramètre permet d'indiquer le caractère à vérifier |
Description
Cette fonction indique si le caractère est un nombre hexadécimal (0 à F).
Remarques
- La fonction isxdigit() renvoie une valeur différente de zéro si caractere est un chiffre hexadécimal; sinon, zéro est retourné. Un chiffre hexadécimal sera dans l'une de ces intervalles : A à F, a à f ou 0 à 9.
- Définition et utilité : La fonction isxdigit fait partie de la bibliothèque <cctype> en C++ et permet de vérifier si un caractère est un chiffre hexadécimal valide. Cela inclut les chiffres de 0 à 9 et les lettres de a à f (en minuscules ou en majuscules). Cette fonction est utile lorsqu'on travaille avec des valeurs hexadécimales, par exemple lors de l'analyse de données binaires ou du traitement de valeurs en notation hexadécimale.
- Caractères valides pour isxdigit : isxdigit reconnaît les caractères suivants comme valides pour une représentation hexadécimale :
- Les chiffres de 0 à 9, représentant les valeurs numériques de 0 à 9.
- Les lettres de a à f et de A à F, qui représentent les valeurs hexadécimales de 10 à 15. Par exemple, isxdigit('a') ou isxdigit('A') renverra true, tout comme isxdigit('3').
- Utilisation dans le traitement des nombres hexadécimaux : isxdigit est particulièrement utile lorsqu'on doit valider ou analyser des chaînes représentant des nombres hexadécimaux. Par exemple, si vous lisez une chaîne de caractères contenant des caractères hexadécimaux, vous pouvez utiliser isxdigit pour vous assurer que chaque caractère est valide avant de le convertir en une valeur numérique. Voici un exemple où on vérifie chaque caractère d'une chaîne :
- Différence avec isdigit : isxdigit est similaire à isdigit, mais elles ne vérifient pas les mêmes ensembles de caractères. Tandis que isdigit ne reconnaît que les chiffres de 0 à 9, isxdigit reconnaît également les lettres a à f et A à F. Par exemple, isxdigit('a') renverra true, mais isdigit('a') renverra false. Cette distinction est essentielle dans les programmes traitant des valeurs hexadécimales.
- Applications dans les calculs et conversions hexadécimaux : isxdigit est couramment utilisée dans les programmes où des calculs ou des conversions hexadécimaux sont effectués. Par exemple, lorsqu'un programme lit une séquence de caractères représentant un nombre hexadécimal, il peut utiliser isxdigit pour valider chaque caractère avant de les convertir en leur valeur numérique. Cela est particulièrement utile dans le traitement de données binaires ou dans les programmes qui manipulent des adresses mémoire, des couleurs en format hexadécimal, ou des fichiers binaires.
- Comportement avec des caractères non-hexadécimaux : Lorsque isxdigit est utilisée avec des caractères qui ne font pas partie de l'ensemble des
chiffres hexadécimaux (par exemple, des caractères spéciaux ou des lettres non incluses dans a à f et A à F), elle retournera 0, indiquant que le caractère n'est pas un chiffre
hexadécimal valide. Cela permet de facilement détecter les caractères invalides dans une chaîne représentant un nombre hexadécimal. Exemple :
- std::cout << isxdigit('%') << std::endl; // Affiche 0 (car '%' n'est pas un chiffre hexadécimal)
Exemples
Voici un exemple permettant d'afficher les caractères hexadécimal (1) ou non (0) entre l'intervalle 32 et 127 :

on obtiendra le résultat suivant :
= 0, ! = 1, " = 1, # = 1, $ = 1, % = 1, & = 1, ' = 1, ( = 1, ) = 1, * = 1, + =1, , = 1, - = 1, . = 1, / = 1, 0 = 0, 1 = 0, 2 = 0, 3 = 0, 4 = 0, 5 = 0, 6 = 0,
7 = 0, 8 = 0, 9 = 0, : = 1, ; = 1, < = 1, = = 1, > = 1, ? = 1, @ = 1, A = 0, B
= 0, C = 0, D = 0, E = 0, F = 0, G = 0, H = 0, I = 0, J = 0, K = 0, L = 0, M = 0
, N = 0, O = 0, P = 0, Q = 0, R = 0, S = 0, T = 0, U = 0, V = 0, W = 0, X = 0, Y
= 0, Z = 0, [ = 1, \ = 1, ] = 1, ^ = 1, _ = 1, ` = 1, a = 0, b = 0, c = 0, d =
0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, l = 0, m = 0, n = 0, o = 0,
p = 0, q = 0, r = 0, s = 0, t = 0, u = 0, v = 0, w = 0, x = 0, y = 0, z = 0, { =
1, | = 1, } = 1, ~ = 1, ¦ = 0,
Un exemple typique de l'utilisation de isxdigit est de vérifier si un caractère donné est valide dans un contexte hexadécimal. Par exemple :
Ce programme affichera "5 est un chiffre hexadécimal valide." car 5 est un chiffre hexadécimal valide.
Voir également
Langage de programmation - C - Référence de procédures et fonctions - isxdigit
Références
Langage C, Edition Micro-Application, Gehard Willms, 2001, ISBN: 2-7429-2008-0, page 732.
Borland C++ for Windows 4.0, Library Reference, Edition Borland, 1993, Part # BCP1240WW21772, page 154.
Dernière mise à jour : Lundi, le 3 août 2015