du kannst daraus eine union machen:und dann über das array c auf die bytes einzeln zugreifen... das wär der IMHO elegantere weg. über den pointer geht's natürlich auch:Code:union Pdata { struct _bf { unsigned long int id:30; unsigned char status:4; signed long int position:28; } bf; unsigned char c[8]; } pos;cm.Code:int i; unsigned char *p; for(p=(unsigned char*)&pos, i = 0; i < sizeof(pos); i++, p++) printf("%02x ", *p);
Lesezeichen