[C] déclarer une variable hexadecimal

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
Configuration: Windows XP
Internet Explorer 7.0

2 réponses

  1. Contributeur
    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
    1. Bonjour,

      Tu ne peut pas déclarer une variable Hexa en C, tu déclare des entiers (int, long, ...) ou des flote, double ...
      Ensuite tu peut travailler avec l'hexa.

      Dans ton cas, int x = 0x10; tu a la valeur Hex 10 dedans, ce qui correspond a 16 en base 10, "10000" en binaire ....

      Steph
      2