[C] déclarer une variable hexadecimal

Fermé
____22 Messages postés 98 Date d'inscription jeudi 15 novembre 2007 Statut Membre Dernière intervention 13 janvier 2012 - 23 avril 2009 à 13:11
stephbb75 Messages postés 726 Date d'inscription mercredi 22 avril 2009 Statut Membre Dernière intervention 3 mars 2020 - 23 avril 2009 à 13:25
Bonjour,

comment declarer en C un evariable hexadécimale

int x = 0x10;

quoi mettre à la place de int? byte?

est-ce que x vaut 10 ou 16 dans ce cas?

merci de l'aide
A voir également:

2 réponses

fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 1 835
23 avril 2009 à 13:25
Salut,
Ta variable ne possédera pas de base particulière. Dans la mémoire le nombre est stockée en binaire.
C'est à l'affichage que tu peux demander l'affichage dans une base (16 par exemple).
Lorsque tu fais int x = 0x10; tu expliques au compilateur que le nombre que tu rentres est en base 16. Lui il le stockera en binaire en mémoire. Si tu demandes un affichage en décimal (printf("%d",x); t'obtiendras 16.
Si tu mets printf("%x",x); cela sera 10 (affichage hexa).
13