C#中调试和错误的处理
2018-03-31 21:42
399 查看
正常模式下的调试
1,在vs中使用Console.Write(或者WriteLine)方法向控制台输出变量的值,通过这种形式来观察变量的值是否符合预期。2,在Unity中可以使用Debug.Log(“”) Debug.LogError(“”) Debug.LogWarn(“”),想Unity的Console窗口输出信息,方便进行调试错误。
中断模式下的调试
通过断点的设置,暂停程序的执行。断点是什么?即源代码自动进入终端模式的一个标记。
如何插入断点?
右键代码,选择breakpoint,insert breakpoint。
光标移动到代码行,菜单栏中选择Debug,Toggle Breakpoint。
光标移动到代码行,按下F9设置断点,再按下取消断点。
在需要添加断点的行首位置,单击设置断点,再次单击取消断点。
断点处选择的行是不执行的。断点信息在断点窗口中可以查看、定位、删除断点。
如何在中断模式下查看变量的值?
鼠标直接移动到变量名上就可以查看,或者在断点窗口中可以看到变量的值。
局部变量中显示当前环境下所有局部变量目前(断点运行)的值。
监视可以监视特定变量的值。
假如在定义的函数中设置断点,我们可以在调用堆栈中看到:
即调用堆栈显示当前行是由哪个函数调用过来的。
而对于即时窗口,可以手动的输入变量名称来查看目前环境下的变量。
第一个res查询失败,是因为查询第一个时断点设置在了Fun中,该环境下没有res变量。
同时,在局部变量或者即时窗口,都可以直接对当前的值进行修改、重新赋值。
逐语句与逐过程
逐语句
一条一条语句的去执行,在遇到函数等其他语句时,会调到函数中,接着逐语句的去运行,当函数运行完毕再跳回来,就是程序一卡一卡的去执行。
逐过程
也是一条一条的去执行,但是是流水式的去执行,把函数当一条语句去执行,不会有跳转这种行为。相当于从断点一直刷到最后,没有什么逻辑在其中。
相关文章推荐
- C#的调试和错误处理
- 小议C#错误调试和异常处理
- C#学习速记_调试和错误处理
- 01-C#入门(调试和错误处理)
- C#中的调试和错误处理
- C#入门经典 chapter7 -C#的调试和错误处理
- C#的调试和错误处理
- JavaScript高级程序设计 错误处理与调试学习笔记
- 错误处理及调试
- 处理错误和调试
- javascript错误处理与调试(转)
- 错误处理和调试 - C++快速入门30
- C#字符串转换为日期时间格式及其错误处理
- js错误处理与调试理论和办法 (转)
- C# 图片处理 代码 GDI+一般性错误 参数无效
- C# 如何处理抛出的异常,或者已知的错误
- ASP.NET 客户端回调实现 (C#) 示例 (VS2005)MSDN 错误处理
- fiddler 调试 WebDav 引起400错误处理
- Glide 入门到精通之十一 ——异常:调试和错误处理