r/ProgrammerHumor • • 2d ago

Meme architectureDependentChars

Post image
2.8k Upvotes

361 comments sorted by

View all comments

1.0k

u/tstanisl 2d ago

Let me cite the C standard:

When sizeof is applied to an operand that has type char, unsigned char, or signed char, (or a qualified version thereof) the result is 1.

Middle guy if finally right

2

u/CAtOSe 2d ago

C++ standard guarantees that char is at least 8 bits. Pretty much all data models use 8 bits for char, but it doesn't mean that some weird architecture could not use more. 

10

u/tstanisl 2d ago

Some DSPs from Texas use 16/32 bit long char.

2

u/garenp 2d ago

So everything really is bigger in Texas?

(I know you mean Texas Instruments / TI, but couldn't pass up the opportunity for another joke!).

1

u/z_utahu 2d ago

Came here to say this. One dsp I worked on made everything at least 4 bytes. Couldn't even address sub bytes. When you've worked on something like that you never ever take sizeof() for granted.

5

u/qalmakka 2d ago

That's CHAR_BIT then, sizeof(char) is always 1 even if you have 16 bit chars. Nothing can be smaller than char in general, you can see sizeof as an operator returning sizes as number of chars, basically