自学-调试和异常

自学-调试和异常

ID:21316987

大小:371.00 KB

页数:11页

时间:2018-10-21

自学-调试和异常_第1页
自学-调试和异常_第2页
自学-调试和异常_第3页
自学-调试和异常_第4页
自学-调试和异常_第5页
资源描述:

《自学-调试和异常》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、调试与异常处理调试与异常处理代码中的错误分为两种编译错误(又叫简单错误,指编译器能够发现的错误,要会看错误提示)语义错误(逻辑错误,程序能够运行,但得到的结果和想要的不一样,或者产生了异常)编译错误的调试查找编译错误1.让vs进行编译*1)生成和重新生成的区别:生成是在上次生成的基础上把有区别的地方重新编译;重新生成是把编译过程完全重来*2)生成和生成解决方案的区别:解决方案下可以有多个项目,生成解决方案可以将该方案下所有的项目都生成;项目的生成只作用于单个项目*3)F5和Ctrl+F5:前者可以进入中断状态,后者中断时直接从程序中退出2.编译过程结束后,可以在错误列

2、表中查看程序中的编译错误。要读懂错误提示,可以根据提示修改代码。逻辑错误的调试如果发现程序运行得到的结果和预期的结果不一致,并且程序可以得到运行,说明出现的是逻辑错误。逻辑错误的调试有两种方法,一种是非中断(正常)模式下的调试;一种是中断模式下的调试。中断模式下的调试1.设置断点,鼠标左键点击要设置断点的代码最左侧,该行代码左侧会添加上一个红色圆点,就是断点;2.用F5启动程序。程序会中断在设置了断点的位置,等待进一步的指令;3.对于进入中断状态的程序,用F10单步运行,并监控局部变量窗口中的变量值,查看有没有异常情况。异常定义了程序中遇到的非致命的错误,而不是编译时

3、的语法错误可能的错误举例:程序打开一个不存在的文件网络连接中断数组越界处理异常的语法:try{//可能产生异常的语句组;}catch(异常名异常形式参数){//异常处理语句组;}finally{//无论是否出现异常都一定执行的语句组;}异常处理异常处理的基本结构try——包含产生异常的代码catch——包含产生异常时要执行的代码,可以包含多个catch块,响应特定的异常类型,当把catch后面的()整个省略,则该catch块可以响应所有的异常。产生异常后只能执行一个catch块。finally——包含总会得到执行的代码。如果没有产生异常,则在try块执行之后执行fin

4、ally块中代码;如果产生了异常,则在catch块执行完之后执行finally块中代码。异常处理的基本结构当try块中的代码出现异常后,将依次发生如下事件:1)try块在发生异常的地方中断程序的执行2)如果有catch块,就检查该块是否匹配于已发生的异常类型;如果有catch块与已发生的异常类型匹配,执行第一个catch块中代码;如果没有找到匹配的catch块,转步骤3)3)如果有finally块,执行finally块中的代码获得异常信息在有参的catch块中,可以获得异常的信息catch(Exceptione){Console.WriteLine(e.Message

5、);}Exception中定义了很多属性,通过这些属性可以了解异常的具体情况。访问这些属性要通过Exception类的对象,如上面的例子,通过e.属性名实现。这里只介绍Message属性,通过这个属性可以了对所产生异常的描述。常见异常举例算数运算中发生的异常,如除以零eg.doubled=30/0;变量还没有指向一个对象,就引用这个对象的成员eg.stringstr=null;intlen=str.length;转换异常IO异常应用程序异常异常举例staticvoidMain(string[]args){try{stringst=null;intn=st.Length

6、;}catch(Exceptione){Console.WriteLine(e.Message);}}}

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

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

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