On Mon, 25 Nov 2002, Leopold Toetsch wrote: > Dan Sugalski wrote: > > >> $1 = (INTVAL)((char)($1)); > >> The INTVAL could be a "long long". > > > > That one needs a sizeof(char) check. chars are *not* 8 bits everywhere. > > AFAIK are chars 8 bits by defintion, i.e. C standard. The machine > representation of a char might be different though.
The standard only requires CHAR_BIT ("number of bits for smallest object that is not a bit-field (byte)") to be at least 8 (5.2.4.2.1). sizeof(char) is 1 by definition (6.5.3.4.3). Dave Isa. 40:31