Servus, wenn ich einen struct wie folgt definiere:
1 | typedef struct { |
2 | u16 wert1 : 1; |
3 | u16 wert2 : 1; |
4 | u16 wert3 : 1; |
5 | u16 wert4 : 1; |
6 | } tWerte; |
wie groß ist dann der benötigte Speicher für jedes struct vom typ "tWerte"?
|
Forum: Compiler & IDEs Speicherbedarf structServus, wenn ich einen struct wie folgt definiere:
wie groß ist dann der benötigte Speicher für jedes struct vom typ "tWerte"? Jep, ich tippe auch auf auf ein Byte Speicherbedarf. Die 64 Bit sind falsch. Das ist ja schließlich nen Bitfeld und da wird normalerweise auf ganze Byte aufgerundet. MfG Marius Was ist u16? unsigned int? Dann tippe ich auf 2 Byte. Ich weiß aber tatsächlich nicht auswendig, wie hier die Lage laut C-Standard ist. Ob der Compiler bei Bitfeldern den Basistyp des Bitfeldes berücksichtigen muss (in diesem Fall u16) oder ob er ihn ignorieren darf, und nur alle Bits irgendwie unterbringen muss. Warum machst du nicht einfach einen sizeof( tWerte ) und lässt dir das Ergebnis ausgeben? Dann weißt du es genau. 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.
|
|