Forum: Compiler & IDEs Frage zu C: Vereinen von struct, union und array


von Carsten (Gast)


Lesenswert?

Hallo.
Ich habe da ein Problem wo ich nicht weiter weiß,
vielleicht hat ja jemand von euch eine Idee :)

Ich habe folgende Struktur:

union {
  Byte s ;
  struct {
  unsigned char bStatusA:1 ;
  unsigned char bStatusB:1 ;
  unsigned char bStatusC:1 ;
  unsigned char bStatusD:1 ;
  unsigned char bStatusE:1 ;
  } m ;
} ;

Der Zugriff ist:
m.bStatusA = 1;    //setzt einen Status
m.bStatusA = 0;    //löscht einen Status
s = 0;             //löscht alle Stats

Nun möchte ich es gerne vervielfachen.
Das ganze soll dann mit einem Index angesprochen werden können.

Also so (sinngemäß):
m[2].bStatusA = 1;    //setzt einen Status im 3. Feld
m[0].bStatusA = 0;    //löscht einen Status im 1. Feld
s[1] = 0;             //löscht alle Stats im 2. Feld

Hat da jemand eine Idee? Wenn sowas überhaupt möglich ist^^

MfG

von Oliver (Gast)


Lesenswert?

typedef union {
  Byte s ;
  struct {
  unsigned char bStatusA:1 ;
  unsigned char bStatusB:1 ;
  unsigned char bStatusC:1 ;
  unsigned char bStatusD:1 ;
  unsigned char bStatusE:1 ;
  } m ;
} MyType;

MyType m[47];

Oliver

von Carsten (Gast)


Lesenswert?

Total number of errors: 0
Total number of warnings: 0

Vielen Dank für die schnelle Antwort ;)

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.