You misspelled "non-portable". Assuming sizeof(int)==sizeof(any*) has
been known as one of the classical "VAXism" fallacies for a long time.
(Rule: Pointers are not numbers. This is actually something good
coming out of learning Pascal. ;-)
For portable code, look at dbz. That one is from 1989 and apparently
works well on 64 bit machines.
olaf