Manipulation de bits en langage C
Répondre à la discussion
Affichage des résultats 1 à 5 sur 5

Manipulation de bits en langage C



  1. #1
    youril

    Question Manipulation de bits en langage C


    ------

    Bonjour, dans le cadre de mon stage,je dois modifier un programme écrit en C++ et utilisant le type "bool" pour le réécrire en C, et j'aurais voulu savoir comment on pouvait faire de la manipulation de bits sachant qu'en C le type bool n'existe pas (enfin je ne crois pas).
    Merci.

    -----

  2. #2
    invitea63d2df6

    Re : Manipulation de bits en langage C

    Le type bool existe en C dans la norme C99

    http://nicolasj.developpez.com/articles/c99/#LV-E

  3. #3
    le fatumbi

    Re : Manipulation de bits en langage C

    Au cas où, ceci semble plus précis concernant strictement "bool" (ancien et nouveau):
    http://c.developpez.com/faq/c/?page=types#TYPES_bool

    Ensuite, s'il s'agit réellement de manipuler du "bit" comme demandé (de taille= strictement 1 bit) , "bool" a une taille certainement "au moins égale" à 1 byte... donc, il faut masquer (bitwise and/or) ou choisir un langage mieux adapté.

  4. #4
    invite311b66ca

    Re : Manipulation de bits en langage C

    _Salut !
    _Tu peux créer un octet, et travailler sur chacun des bit sans passer par les opérations de masquage : si ta variable est OCTET, pour travailler avec le bit 0 (LSB), tu utiliseras OCTET.F0
    _Cette façon fonctionne parfaitement sous MikroC (pour du PIC), mais je ne sais pas si elle fait partie de la norme ANSI. A essayer, en tout cas !
    _Je ne voudrai pas dire de connerie, mais je crois que lorsque l'on réserve une variable de type BOOL, le C réserve un octet entier en mémoire (et utilisera ce même octet si on défini 7 autres variables BOOL.
    _Bonne programmation (si ce n'est pas trop tard !)
    _prof.maquaire

  5. A voir en vidéo sur Futura
  6. #5
    invite7a8ce750

    Re : Manipulation de bits en langage C

    Citation Envoyé par prof.maquaire Voir le message
    mais je crois que lorsque l'on réserve une variable de type BOOL, le C réserve un octet entier en mémoire (et utilisera ce même octet si on défini 7 autres variables BOOL.
    Nope.
    Un bool en C99 est un int.
    Et il n'y a aucune optimisation pour les gérer.

    Voir le lien de Fatumbi.

    Il faut créer ces propres structures et utiliser des masques pour optimiser ça.

Discussions similaires

  1. Manipulation de l'esprit?
    Par Titie3325 dans le forum Psychologies (archives)
    Réponses: 23
    Dernier message: 07/07/2010, 14h53
  2. Convertir 12 bits série en 7 bits paralléle avec un HC11 ?
    Par invite0ee134f7 dans le forum Électronique
    Réponses: 2
    Dernier message: 03/03/2005, 08h39
  3. Manipulation
    Par invitee17aeca5 dans le forum [ARCHIVE] Psychologie / Sociologie
    Réponses: 11
    Dernier message: 08/11/2004, 11h56
  4. manipulation de fichiers en langage c
    Par invite96de2547 dans le forum Logiciel - Software - Open Source
    Réponses: 11
    Dernier message: 21/11/2003, 12h05
Découvrez nos comparatifs produits sur l'informatique et les technologies.