天天看点

.NET(C#)测试控制台应用

1.前言

    前面我们已经在VisualStudio中建立并编写了一个简单的不能再简单的控制台程序了,接下来我们学着怎样去debug成功程序,接着上一篇 .NET/C#入门之开发控制台应用编辑的代码进行

2.设置调试模式
.NET(C#)测试控制台应用
3.给代码打上断点

    可以有两种方式~~~

    3.1 在需要打断点的代码最左边单机,出现红点表示断点设置成功

.NET(C#)测试控制台应用

     3.2 在需要打断点的代码上右键选择断点插入断点     

.NET(C#)测试控制台应用
4.启动调试

    当我在控制台输入“andy”的时候,局部变量窗口就会显示出断点处变量接收情况

.NET(C#)测试控制台应用

 注意局部变量窗口的输入,他可以输出你程序断点处的变量值,以此来判断变量是否有问题。

5.即时窗口使用

    即时窗口可以实时的输入参数,调试程序。

.NET(C#)测试控制台应用

     在gif中我在控制台不小心吧“andy”写掉了一个y这个时候我直接在“即时窗口”中写上 name="andy" 回车这个时候就可以看到局部变量的值也跟着发生了变化 这样就方便我们实时的去输入调试代码,实时观察执行情况。     ps:清屏小技巧,输入“>cls”回车即可清屏,其他命令这里就不提及了。

6.设置条件断点     6.1 编写一段代码

  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Threading.Tasks;
  6. namespace ConsoleApp
  7. {
  8. class Program
  9. {
  10. static void Main(string[] args)
  11. {
  12. Console.WriteLine("What's your name?");
  13. ///循环输出数字
  14. for (var i=0;i<10; i++) {
  15. Console.Write("{0}", i);
  16. }
  17. var name = Console.ReadLine();
  18. Console.WriteLine("\nHello {0} my name is elimy.\n", name);
  19. Console.WriteLine("Press any key to exit...");
  20. Console.ReadKey();
  21. }
  22. }
  23. }

    我们在 Console.Write("{0}", i);     我们在打上一个断点 。

    6.1 右键断点,点击条件

.NET(C#)测试控制台应用

    6.2 设置断点条件i==5

.NET(C#)测试控制台应用

      6.3 开启调试

.NET(C#)测试控制台应用

        可以看到结果如下,当i==5为true的时候触发了条件断点,所以程序停止在这里。

7.逐语句/逐过程/跳出的区别

    逐语句:表示每次执行一条语句     逐过程:将函数当成一条语句执行,从函数执行开始直接执行到函数完     跳出:当在函数内时,点击跳出,直接执行到函数结束

  参考: https://docs.microsoft.com/zh-cn/dotnet/articles/csharp/getting-started/debugging-with-visual-studio-2017