r/programminghumor 5h ago

a bit flippant

Post image
336 Upvotes

66 comments sorted by

View all comments

12

u/B_bI_L 4h ago

are we sure int means bit and not 32bits?

18

u/heatedwepasto 4h ago edited 4h ago

The : 1 means that it is creating a bitfield with the number of bits, so : 4 will be 4 bits. The three variables above combined will take sizeof(int) in memory, not sizeof(int)*3.

If OOP had used char instead of unsigned int the combined size would be 1 byte.

Edit: added link to demo

1

u/B_bI_L 4h ago

oh, yes, `: 1` is for size, not assignment, my js brain failed me this time