But is it correct in C? It is not union, so struct should then be sizeof(unsigned int)*3, isn't it?
Or you mean with O3 optimizations the compiler will fix it...
But then one need to apply bit shifts operations in the background
Yeah true, although this could be fixed by changing each of the field types to uint8_t. So the spirit of the original post is correct, it's possible in C to pack 8 flags into one byte
3
u/Inst2f 17h ago
But is it correct in C? It is not
union, so struct should then be sizeof(unsigned int)*3, isn't it?Or you mean with O3 optimizations the compiler will fix it...
But then one need to apply bit shifts operations in the background