后退所有调试点的关键

时间:2018-09-08 15:23:52

标签: c# visual-studio-2017 visual-studio-debugging

我想知道在vs 2017中调试c尖锐代码时退后的关键步骤。 例如,我在函数处设置了一个断点。在调试时,程序会在此断点处命中。但是从那个断点开始,我如何跳回到代码中的所有调用点?类似于“ Ctrl”和“-”键。我想知道从哪里来。这样回溯。

1 个答案:

答案 0 :(得分:1)

您追求的是Call Stack

想象我们有这个程序:

public static class Program
{
    private static int something;
    public static void Main()
    {
        One();

        Console.Read();
    }

    private static void Three()
    {
        something = 3;
        Four();
    }

    private static void Four()
    {
        something = 4;
    }

    private static void Two()
    {
        something = 2;
        Three();
    }

    private static void One()
    {
        something = 1;
        Two();
    }
}

想象一下,我们在Four()中有一个断点,调试器在那里停止,如果我们查看调用栈窗口,它将看起来像这样:

enter image description here

我们可以单击并转到调用堆栈历史记录中的任何位置。最好的部分是,当您单击One()时,它将显示调用堆栈中此时的something值。因此,尽管我们位于Four()中,并且something的值为4,但是如果您跳到One(),则该值将显示为零。

有关键盘快捷键,请参阅this thread