1.前言
前面我们已经在VisualStudio中建立并编写了一个简单的不能再简单的控制台程序了,接下来我们学着怎样去debug成功程序,接着上一篇 .NET/C#入门之开发控制台应用编辑的代码进行
2.设置调试模式
3.给代码打上断点
可以有两种方式~~~
3.1 在需要打断点的代码最左边单机,出现红点表示断点设置成功
3.2 在需要打断点的代码上右键选择断点插入断点
4.启动调试
当我在控制台输入“andy”的时候,局部变量窗口就会显示出断点处变量接收情况
注意局部变量窗口的输入,他可以输出你程序断点处的变量值,以此来判断变量是否有问题。
5.即时窗口使用
即时窗口可以实时的输入参数,调试程序。
在gif中我在控制台不小心吧“andy”写掉了一个y这个时候我直接在“即时窗口”中写上 name="andy" 回车这个时候就可以看到局部变量的值也跟着发生了变化 这样就方便我们实时的去输入调试代码,实时观察执行情况。 ps:清屏小技巧,输入“>cls”回车即可清屏,其他命令这里就不提及了。
6.设置条件断点 6.1 编写一段代码
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- using System.Threading.Tasks;
-
- namespace ConsoleApp
- {
- class Program
- {
- static void Main(string[] args)
- {
- Console.WriteLine("What's your name?");
- ///循环输出数字
- for (var i=0;i<10; i++) {
- Console.Write("{0}", i);
- }
-
- var name = Console.ReadLine();
- Console.WriteLine("\nHello {0} my name is elimy.\n", name);
- Console.WriteLine("Press any key to exit...");
- Console.ReadKey();
- }
- }
- }
我们在 Console.Write("{0}", i); 我们在打上一个断点 。
6.1 右键断点,点击条件
6.2 设置断点条件i==5
6.3 开启调试
可以看到结果如下,当i==5为true的时候触发了条件断点,所以程序停止在这里。
7.逐语句/逐过程/跳出的区别
逐语句:表示每次执行一条语句 逐过程:将函数当成一条语句执行,从函数执行开始直接执行到函数完 跳出:当在函数内时,点击跳出,直接执行到函数结束
参考: https://docs.microsoft.com/zh-cn/dotnet/articles/csharp/getting-started/debugging-with-visual-studio-2017