k0der's Avatar
Go4Expert Member
it was asked by someone to me. I have only IA32.

The int* is unsigned integer (as pointing to an address) and int both have same size of 64bits on IA-64. So at least i do not see any problem with the code.
xpi0t0s's Avatar, Join Date: Aug 2004
Perhaps that's the problem. An int* is NOT an unsigned integer; it is a pointer to a signed integer. These are not the same thing. So maybe the problem is with the interpretation of code (int*=unsigned int) rather than the code itself.

On a 64-bit platform pointers may be 64-bit. int may still only be 32-bit - it depends on how the compiler author implements the 32 to 64-bit upgrade. Upgrading ints to 64-bit might (a) be unnecessary and (b) break too much existing code, so for example Microsoft have chosen to leave int as 32-bit and you need a different type if you actually want a 64-bit integer.

Last edited by xpi0t0s; 19Jul2010 at 13:35..