Retourner aux forums || Retourner au forum Programmation.c
bête question:
Dans un programme, est-ce que le fait d'écrire les nombres en hexadécimal au lieu de les écrire en décimal, est-ce que c'est une question de gout ou bien ça apporte réellement quelque chose au programme.
Ex:
enum blabla
{
val1 = 1,
val2 = 2,
val3 = 4,
val4 = 8,
val5 = 16
}
VS
enum blabla
{
val1 = 0x1,
val2 = 0x2,
val3 = 0x4,
val4 = 0x8,
val5 = 0x10
}
merci
> Lire le message (5 commentaires, moyenne: 2,8).
de goût
De goût,
L'hexa est plus utilisé lorsqu'on a besoin de faire des masques binaires. C'est plus lisible.
Mais chacun fait ce qu'il lui plaît
-
[^]Re: de goût
Posté par aedrin () le 15/08/2007 à 19:50. (lien). Évalué à 2.exactement,
c'est le rôle du compilateur de transformer les différentes représentations possibles de la même valeur.
le code généré ensuite est sensé être le même.
à l'extrême limite, le programme sera 1 femtoseconde plus rapide à compiler lorsque c'est écrit en héxa ;-)
[+] utile dans certains cas
La différence entre le décimal et l'héxa se sent lorsque tu dois traiter des nombres importants.
par exemple ...
Dans le cas où tu cherche à affecter la valeur 100 a une variable il n'y aura aucune différence entre
val = 100
ou
val = 0x64
Par contre pour affecter la valeur 1000000000000000000000000000000000000000000 à ta variable
il sera plus simple de procéder a l'aide de son équivalent en héxa
soit
val = 0xC0914B2680000000
a la place de
val = 1000000000000000000000000000000000000000000
ca prendra moin de place dans ton code et fera plus sérieux ;)
-
[^]Re: utile dans certains cas
Posté par Bruno Pouyenne () le 16/08/2007 à 06:17. (lien). Évalué à 5.Je dirais au contraire que dans ton exemple le décimal parait plus approprié que l'hexadécimal.
Peut importe que le nombre soit plus grand a écrire 10...0 est un nombre particulier en base 10, et justement en hexadécimal, on ne voit plus cette particularité.
Il faut utiliser l'hexadécimal lorsque ca fait sens. Un gros avantage de l'hexa c'est la représentaion 2 caractères = 1 octet, ce qui le rend très utile pour faire de masque de bit par exemple.
poidsfort = 0X12345678 & 0XFFFF0000 // resultat 0X12340000
et plus clair que
poidsfort = 0X12345678 & 4294901760 // resultat 0X12340000
Car on voit clairement que l'on garde les 2 octets de poid fort.
Suivant le type de programme que tu fait, il se peut que tu n'aie jamais besoin d'hexadécimal.-
[^]Re: utile dans certains cas
Posté par franken () le 17/08/2007 à 09:39. (lien). Évalué à 1.Autre exemple:
Si tu travailles avec des couleurs par exemple, cela peut-être très utile.
0xFF0000 pour rouge (niveau de rouge à 255, vert à 0, bleu à 0) est plus clair que 16711680 ..
de même 0x00FF00 pour vert ...
D'une manière générale, dès que tu traites des octets par paquets, le besoin de l'hexa se fait sentir. Sinon, le décimal est très bien.
-
Revenir en haut de page || Retourner aux forums || Retourner au forum Programmation.c



Cette discussion est archivée, il n'est plus possible de laisser des commentaires.
Note : les commentaires appartiennent à ceux qui les ont postés. Nous n'en sommes pas responsables.