Notes for CSSAPP
2025-07-26
In C#, bool
uses 1 byte (not 1 bit) due to memory alignment. To store multiple flags efficiently, use bit masking:
byte flags = 0b_0000_1010; // 8 flags in 1 byte
bool flag2 = (flags & (1 << 1)) != 0; // check 2nd flag
bool flagN = (flags & (1 << N)) != 0; // check N-th flag, 0 <= N < 8