Bitfelder in C #
Ich habe eine Struktur, die ich auffüllen und auf die Festplatte schreiben muss (tatsächlich mehrere).
Ein Beispiel ist:
byte-6
bit0 - original_or_copy
bit1 - copyright
bit2 - data_alignment_indicator
bit3 - PES_priority
bit4-bit5 - PES_scrambling control.
bit6-bit7 - reserved
In C könnte ich etwa Folgendes tun:
struct PESHeader {
unsigned reserved:2;
unsigned scrambling_control:2;
unsigned priority:1;
unsigned data_alignment_indicator:1;
unsigned copyright:1;
unsigned original_or_copy:1;
};
Kann ich in C # auf diese Weise auf die Bits zugreifen, indem ich den Punktoperator struct dereferencing verwende?
Für einige Strukturen kann ich nur Bitverschiebungen in einer Accessor-Funktion ausführen.
Ich muss mit vielen Strukturen auf diese Weise umgehen, also suche ich nach etwas, das einfacher zu lesen und schneller zu schreiben ist.