No, the sizeof(int)
is implementation defined, and is usually 4 bytes.
On the other hand, in order to address more than 4GB of memory (that 32bit systems can do), you need your pointers to be 8 bytes wide. int*
just holds the address to "somewhere in memory", and you can't address more than 4GB of memory with just 32 bits.