Possibili duplicati:
What does ‘: number’ after a struct field mean?
What does ‘unsigned temp:3’ meansuso del: operatore in C
Ciao a tutti, mi dispiace chiedere questo tipo di domanda, ma è davvero bugging me, così Chiederò:
Qual è la funzione di: operatore nel codice qui sotto?
#include <stdio.h>
struct microFields
{
unsigned int addr:9;
unsigned int cond:2;
unsigned int wr:1;
unsigned int rd:1;
unsigned int mar:1;
unsigned int alu:3;
unsigned int b:5;
unsigned int a:5;
unsigned int c:5;
};
union micro
{
unsigned int microCode;
microFields code;
};
int main(int argc, char* argv[])
{
micro test;
return 0;
}
se qualcuno avesse voglia a tutti, ho tirato questo codice dal link sottostante: http://www.cplusplus.com/forum/beginner/15843/
mi piacerebbe davvero sapere perché so che ho visto prima da qualche parte, e voglio capire per quando lo vedo di nuovo.
Grazie!
Nota che il layout di campi di bit è implementazione definita, in modo che il risultato di accesso ai campi di bit in un int attraverso un'unione non è definito. Non farlo nel codice di produzione, usa invece le maschere di bit e lo spostamento. – starblue