C force printf pour hexadecimal

Salut!
Est-ce que quelqu'un connait le bon format pour afficher les hexadecimals du forme 0x00. %#x affiche 0 au lieu de 0x00 ainsi de suite. je veux forcer l'affichage pour les reutiliser en bitmap.

merci..

peace

5 réponses

  1. meuh non, encore tard mais il y a mieux quand même :

    printf( "0x%08.8X", i);

    va t'afficher 0x suivi de la valeur avec une string de 8 sur 8 remplie avec des 0.
    un des 8 dit au moins 8 et l'autre pas plus de 8.
    ça marche aussi avec 4 ou une autre longueur.
    16
    1. voilà la bonne syntaxe
      int  z=160;
      printf("%x",z);
      

      cordialement
      ¤
      2
      1. oui mais avec %x, les zero et les int (short) s'affichent du facon normal!
        j'ai besoin d'une format precise : 0x00 pour les zero et 0x0t pout les int (t)...

        merci poura ta reponse
        0
    2. tu vas être obligé de faire le traitement toi même
      par exemple remplacer A par 0A
      (if(value<16) ... traitement)

      de toutes façons, tu peux faire printf("0%x",value);
      si tu tiens à rajouter un 0 avant.
      j'avais oublié:
      %X pour afficher en majuscules
      %x '' en minuscules

      A+
      ¤
      2
      1. essayer aussi cela printf( "%#08.8X", c); le # devrait ajouter le 0X ou 0x devant.
        2
        1. c en fait ce que je fiat mais j'esperais de trouver une solution ad hoc..
          tant mieux...

          merci bcp....
          0