Yes, on a platform with virtual memory, this is the address in the address space of the process, i.e. This is the address in virtual memory. In such systems, at a typical application level, the actual physical address in RAM does not make any sense, even if it is already known at that moment, it can change at any time. The physical address of RAM is out of your control. So, at a typical application level, when people talk about "physical addresses", they usually refer to what you typed - the address in the process address space, that is, the virtual address.
Just don't use %u to printf pointers. Use %p . Or at least convert the pointer to the desired type of an unsigned integer and use the format specifier for that type.
AnT
source share