程序被执行后,在虚拟内存中,特定变量的地址是不是变化的?#include <windows.h>
int APIENTRY WinMain(HINSTANCE hInstance,
                     HINSTANCE hPrevInstance,
                     LPSTR     lpCmdLine,
                     int       nCmdShow)
{
int k=60542; int *kk=new int;
delete kk; int kkk; while (TRUE)
{
Sleep(1000);
} return 0;
}在win32中是虚拟内存机制,每一个程序自以为自己独占4GB内存,上面的程序被执行后其中的变量在虚拟内存中的地址是不是固定的?
我认为 k 的地址是固定的!
其他的两个就不知道了!!上面的程序运行期间,用另外的进程(softice,trw2000)读取变量 k ,kk ,kkk 的内容,关键是要找到他们在虚拟内存中的偏移地址,我不知道这些地址是不是固定的,如果是,那就好办了,打开进程,直接读就可以了!如果不是固定的,还没有好的办法