Re:Sizeof(char) is 1
by cdavid on Monday September 06, 2010 @04:25AM
(#1666243)
You missed the explanation: a char is always 1 byte, because in C the definition of byte is char. The wrong assumption is 1 byte == 8 bits.
[ Parent
| on HN ]
OK, define char. If it is a type built-in C - then of course sizeof(char) = 1. And there is no reason to write such posts.
The problem is people are confusing the definition and the usage, because this particular type "char" was supposed to hold a numerical representation of a symbol, which in case of a multi-byte encoding is not 1 byte anymore.
So, sizeof(char) is always 1, and what they trying to say is sizeof(numeric-representation-of-a-symbol) which is not a concern of the C language.