intptr_t
is a new invention, created after 64-bit and even 128-bit memory addresses were imagined.
If you ever need to cast a pointer into an integer type, always use intptr_t
. Doing anything else will cause unnecessary problems for people who need to port your code in the future.
It took a long time to iron out all of the bugs with this in programs like Mozilla/Firefox when people wanted to compile it on 64-bit Linux.