学自c#程序设计——北京大学 视频7.5
7.5.1 程序的错误种类
程序的错误通常可以分成三大类:
(1)语法错误 (2)运行错误 (3)逻辑错误
常见的语法错误:
(1)如括号不配对、多/少了分号;
(2)字母写错、变量未定义、控件命名写错;
(3)函数少传了一个参数。
语法错:编译器可以发现(在编辑、编译时)
对编程者:养成良好的编程习惯
(1)命名。空行、注释;
运行时错误(Runtime Error)多数发生在不可预期的异常
·如:
(1)文件打不开、网络打不开、内存不足;
(2)整数除法的除数为0.数组下标越界、变量初始化为null;
·解决办法:
(1)使用try{}catch
(2)使用if语句进行判断处理
逻辑错误(Logic Error)是指程序所完成的任务与预想的任务不匹配
·如:
(1)小于s.Length写成<=s.Length
(2)1加到100,却只加到99
(3)算法的错误
·解决逻辑错误:
(1)分析清楚需求、理清算法、在程序中进行调试
(2)特别注意边界条件
7.5.2 程序调试————断点、跟踪、监视
程序调试的基本手段
断点:左边单击(程序运行到断点处停止)
跟踪:F10或F11(看流程)
监视:鼠标指向它,或点右键,添加监视(看变量)
//VS2019:
//F5 开始/继续调试,Shift+F5 停止调试
断点(break point)
设置断点
断点的属性
(1)条件断点(先设置断点,右击,可编辑条件)
(2)命中次数
清除或禁用断点
(1)清除所有断点 Ctrl + Shift + F9
跟踪(Trace)
单步执行
(1)逐语句 F11
(2)逐过程 F10
点右键,运行到光标处
**跳出函数 Shift + F11 **
**拖动到下一句(跳过中间一些语句)//拖动的是断点一列的黄色箭头
监视(Watch)
即时监视
**快速监视 Crtl + Alt + Q **
自动窗口
调用(的)堆栈