Partage
  • Partager sur Facebook
  • Partager sur Twitter

Opérateur bits à bits

Je n'arrive pas à afficher la variable d1 dans le printf en utilisant

    1 avril 2019 à 12:51:45

    #include <stdio.h> #include <stdlib.h> #include <iostream> int main(void) { unsigned d0 = 0; //4octets unsigned d1 = 0; unsigned d2 = 0; unsigned char d3 = 0; unsigned char d4 = 0; unsigned char d5 = 0; unsigned d6 = 0; printf("sizeof d0 : %lu\n", sizeof(unsigned)); d0 = 4025; //12bits d1 = 3080; //12bits d6 |= (d0); d6 |= (d1) << 12; Ca marche printf("d6 4025 : %u\n", (unsigned) (d6 & 0xFFF)); //4025 Display var d0 Ca marche printf("d6 4025 : %u\n", (unsigned) (d6) >> 19 | (d6 & 0xFFF)); //4025 Display var d0 Ca ne marche pas printf("d6 3080 : %u\n", (unsigned) (d6) >> 7 | (d6 & 0xFFF)); //3080 Display var d1 return 0; } Je n'arrive pas à afficher la variable d1 dans le printf en utilisant les opérateurs binaires output d6 4025 : 4025 OK d6 3080 : 102335 Pas Bon j'attends 3080

    -
    Edité par DidierCastellacci 1 avril 2019 à 14:46:59

    • Partager sur Facebook
    • Partager sur Twitter
      1 avril 2019 à 13:43:51

      > Je n'arrive pas à afficher la variable d1 dans le printf en utilisant les opérateurs binaires

      Les opérateurs binaires ne servent pas à afficher.

      • Partager sur Facebook
      • Partager sur Twitter
        1 avril 2019 à 13:59:20

        Et quel est l'affichage attendu exactement? Rq: ça ressemble plus à du C qu'à du C++

        -
        Edité par zoup 1 avril 2019 à 14:01:43

        • Partager sur Facebook
        • Partager sur Twitter

        Opérateur bits à bits

        × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
        × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
        • Editeur
        • Markdown