Action de l'opérateur ":"
Bonjour,
voila je suis tombé sur le code suivant:
Que signifie ":4" ?
J'ai pourtant cherché dans la msdn, sur le net et j'ai pas trouvé grand chose... (une inversion ??)
J'ai même testé par le biais de ce petit programme:
Code:
1 2 3 4 5 6 7 8
|
unsigned char a;
unsigned char b:4;
a = 0x69;
b = 0x69;
eet les printf associé |
J'obtiens comme résultat:
a= 69
b = 06
Si quelqu'un peut m'éclairer sur le sujet ??? Merci d'avance
Re: Action de l'opérateur ":"
Citation:
Envoyé par MonsieurAk
Bonjour,
voila je suis tombé sur le code suivant:
N'existe pas comme ça tout seul en standard. C'est peut être une extension supportée par ton compilateur.
Par contre ce qui existe, ce sont les 'champs de bits', qui sont définis ainsi :
Code:
1 2 3 4 5
|
struct <tag>
{
<type> <champ> : <largeur>;
}; |
avec
- tag : nom de la structure
- type : int ou unsigned int ou [C99] _Bool ou bool
- champ : identificateur
- largeur : nombre de bits de la variable (1 à 16 (minimum garanti par le langage)).
Nota : l'ordre des champs dans un champ de bits n'est pas défini par le langage, mais par l'implémentation.