我正在使用 Visual Studio 2010,使用和 .exe(没有原始代码,所以我只能看到汇编程序)。它生成的代码与此类似(不完全是,它有未知的细微变化):
int main() {
int points = 1000;
int games = 0;
srand ((unsigned int) time(NULL)); // random seed
while(true) {
games++;
playGame(&points, games);
keepPlaying();
}
return 0;
}
加上两个被调用的方法(非常简单的方法)。
现在,当我尝试调试 .exe 时,我打开它,按 F11,一切顺利。我开始阅读代码,放置一些断点,找到主要的,...
但是当我停止它并尝试按 F5 转到第一个断点时,我发现我的程序被加载到内存中的不同位置。因此,我找不到任何断点(指向未使用的内存)。
其他时候,我会逐行使用 F10/F11 直到找到断点。有时我找到了它们(并且它们已启用)但我再次尝试执行直到我到达它们(F5)并且它通过它们。
例如,任何人都知道我是否可以强制 Visual Studio 将汇编程序始终放置在同一个内存位置?或者任何让我保留断点的东西,这样我就不需要每次都逐行执行。