Forcer l'affichage d'une variable sur 8 bits

Bonjour, j'ai une variable contenant les données d'une sortie data de mon montage.
Ces données sont binaires (1 ou 0) que je place dans la variable une à une.
Mon problème est situé lors de l'affichage, si les données contenues dans ma variable commencent par un "0" logique, la valeur affichée sera tronquée jusqu'au premier 1 logique.

Exemple: Si mes données sont : 00011011
ça m'affiche : 11011

Comment forcer l'affichage sur 8 bits?

En attendant j'ai ajouté un 1 logique sur un 9em bit mais ça modifie la valeur décimale de ma donnée...

Variable|=0b100000000;
ce qui donne : 100011011

merci de votre aide

6 réponses

  1. salut,
    tu travailles en quel langage?
    0
    1. c'est du C++, pour une carte arduino (langage très proche du C++)
      0
      1. Contributeur
        hello
        si le compilateur accepte : %08b
        0
        1. Salut, ce "%08b" est à placer devant la variable Résultat?

          ex: Serial.print(%08bResultat,BIN);
          0
          1. Contributeur
            faire une boucle:
             int i=8;
                    while(i)
                            printf("%1d", variable>>--i & 1);
                    printf("\n");
            
            0
            1. super merci beaucoup, ça marche !
              0