Salut, je lis actuellement des cours de C++ parce que je suis un peu nul ^^
Et là, je découvre les champs de bits
J'ai cherché un peu sur Google, leur principe/utilité à l'air évident pour tout le monde, moi je comprends pas trop ^^
Quelqu'un pour m'expliquer ?
Essentiellement ca sert a conserver de la memoire. Ca encode plusieurs informations de quelques bits sur une variable de 32 bit.
Imagine que tu as 32 variables du genre :estMort, estEnVol, ...
si tu les fais en int:
int estMort, estEnVol, ... alors chaque variable va consommer 32bits.
si tu les fais avec un champ de bit
int estMort:1;
int estEnVol:1;
... alors au total ca va prendre 32 bits.
Si je comprends bien, ça sert uniquement à optimiser la mémoire ? C'est à dire gérer l'écriture mémoire au bit près ?
Merci pour ton explication ^^
Oui c'est ça, et si tu veux les manipuler utilise les opérateurs bitwise.
Un site qui m'a bien aidé à l'époque :
http://www.bien-programmer.fr/bits.htm
Non! C'est different les operateurs bitwise. Le but d'utiliser des champs de bits est de se passer des operateurs bitwise. En particulier, il n'y a pas de specification qui dit quel bits sont utilise ou lorsque l'on utilise des champs de bit.
Ah d'accord, j'ai confondu, désolé