《错误处理》PPT课件

《错误处理》PPT课件

ID:39734918

大小:226.10 KB

页数:20页

时间:2019-07-10

《错误处理》PPT课件_第1页
《错误处理》PPT课件_第2页
《错误处理》PPT课件_第3页
《错误处理》PPT课件_第4页
《错误处理》PPT课件_第5页
资源描述:

《《错误处理》PPT课件》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第12章错误调试和异常处理12.1错误分类12.2程序调试12.3异常处理12.1错误分类1.语法错误语法错误也称为编译错误,是由于不正确地编写代码而产生的。如果错误地输入了关键字(例如,将int简写为Int)、遗漏了某些必须的语句成分等,那么C#在编译应用程序时就会检测到这些错误,并提示相应的错误信息。代码加行号:选择“工具”

2、“选项”命令,在出现的“选项”对话框中选择“文本编辑器”

3、“C#”

4、“常规”选项,出现如图12.2所示的对话框。例如,勾选“行号”则在代码的每一行前显示该行的行号,还可以通过选择“C#”中其他项来设置较复杂的编辑功能。2.运行错误在C#项目运

5、行期间,当一个语句试图执行一个不能执行的操作时,就会发生运行错误。例如,数据溢出、数组下标越界等。例如,有一个窗体myForm1上包含以下事件过程:privatevoidbutton1_Click(objectsender,EventArgse){int[]a=newint[10];inti;for(i=0;i<=20;i++)a[i]=2*i;}12.2程序调试C#提供了强大的程序调试功能,使用其调试环境可以有效地完成程序的调试工作,从而有助于发现运行错误。12.2.1调试工具(1)“调试”工具栏(2)“调试”菜单12.2.2如何开始调试从“调试”菜单中选择“启动调

6、试”、“逐语句”或“逐过程”命令,或者在代码编辑窗口中,单击鼠标右键,然后从快捷菜单中选择“运行到光标处”命令,即开始调试过程。如果选择“启动调试”命令,则应用程序启动并一直运行到断点。可以在任何时刻中断执行以检查值或检查程序状态。若选择“逐语句”或“逐过程”,应用程序启动并执行,然后在第一行中断。如果选择“运行到光标处”命令,则应用程序启动并一直运行到断点或光标位置,具体看是断点在前还是光标在前。可以在源窗口中设置光标位置。某些情况下,不出现中断,这意味着执行始终未到达设置光标处的代码。12.2.3设置断点断点是在程序中设置的一个位置,程序执行到些位置时中断(或暂停

7、)。断点的作用是在调试程序时,当程序执行到断点的语句时会暂停程序的运行,供程序员检查这一位置上程序元素的运行情况,这样有助于定位产生错误输出或出错的代码段。设置和取消断点的方法如下:方法1:用鼠标右键单击某代码行,从出现的快捷菜单中选择“断点”

8、“插入断点”命令(设置断点)或者“断点”

9、“删除断点”命令(取消断点)。方法2:将光标移至需要设置断点的语句处,然后按F9键。12.2.4定位错误当某行代码中出现错误时,该错误会自动添加到“错误列表”和“输出”窗口中。可以使用“错误列表”或“输出”窗口来查找代码中的错误。其操作是:双击“错误列表”或“输出”窗口中的项,则光标自

10、动跳到代码编辑器中相应的出错行。有些语言会在编码错误下显示一条波浪线。将鼠标悬停在带有波浪线标记的代码上可显示一条消息,其中对错误进行了描述。12.2.5调试过程先在某行设置断点,然后在调试器中按F5键运行应用程序,应用程序会在该行停止,此时可以检查任何给定变量的值,或观察执行跳出循环的时间和方式。按F10键逐行单步执行代码。12.2.6显示调试信息在C#程序中断的状况下,可以将鼠标放在希望观察的执行过的语句变量上面,调试器就会自动显示执行到断点时该变量的值,如下图:也可以在某个对象上单击鼠标右键,从弹出的快捷菜单中选择“快速监视”命令,即可观察到对象中各个元素的值,

11、如下图:12.3异常处理异常处理语句1.trycatch语句try{//可能产生异常的程序代码}catch(异常类型1异常类对象1){//处理异常类型1的异常控制代码}catch(异常类型n异常类对象n){//处理异常类型n的异常控制代码}【例12.2】创建一个控制台应用程序Proj12-2项目,通过trycatch语句捕捉整数除零错误。namespaceProj12_2{classProgram{staticvoidMain(string[]args){intx=5,y=0;try//try...catch语句{x=x/y;//引发除零错误}catch(Exc

12、eptionerr)//捕捉该错误{Console.WriteLine("{0}",err.Message);//显示错误信息}}}}输出:试图除以零。2.trycatchfinally语句同trycatch语句相比,trycatchfinally语句增加了一个finally块,其作用是不管是否发生异常,即使没有catch块,都将执行finally块中的语句,也就是说,finally块始终会执行,而与是否引发异常或者是否找到与异常类型匹配的catch块无关。其余与trycatch语句相同。finally块通常用来释放资源,而不用等待由运行

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。