This question already has answers here:
function pointer :physical or virtual address
(2个答案)
已关闭6年。
当我在PC程序的C语言中使用指针时,它指向变量的物理地址还是虚拟地址?
(2个答案)
已关闭6年。
当我在PC程序的C语言中使用指针时,它指向变量的物理地址还是虚拟地址?
int x = 10;
int* ptr = &x;
最佳答案
这取决于。
如果您正在编写将在操作系统之上运行的应用程序,即在用户模式下运行且操作系统使用虚拟内存,则该应用程序将指向虚拟地址(或者,它将指向物理地址,但是与实际使用的物理地址不同)。
如果您使用的操作系统没有虚拟内存,或者您正在编写(部分)内核代码,它将指向物理地址。
10-04 22:01