On Wed, 2008-07-30 at 11:03 +0200, Casper.Dik at sun.com wrote:
> I once used a system in which all pointers except for char * and void *
> were shift one bit right.
>
> E.g., a char * for 0x22222222 was represented as a 0x11111111 when casted
> to a short. On that system (AOS/VS on a Data General Eclipse) printed
> 11111111 when you didn't add (void *). With (void *) it would print
> 22222222.
Yup, word-addressed machines (like the DG in question) typically have
distinct formats for byte pointers vs pointers to word-aligned
structures.
But nobody bothers building word-addressed machines any more because C
is too painful on them.
- Bill