小议C#错误调试和异常处理
在程序设计中不可避免地会出现各种各样的错误,在编写代码时须要尽量避免。
在处理错误时,首先应该分析错
误的类型,找出出错的原因才干解决错误。
错误的分类
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvemhhbmd6aWppZWppYXlvdQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">
错误处理
一、错误处理有两种类型例如以下:
1.调试
调试我们经经常使用,什么设置断点定位错误了,并且C#定位错误很easy,还会提示错误的类型。这里就不具体说了。
2.增加异常处理的语句使程序具有容错功能
(1)C#中管理异常的四个keyword:try、catch、finally、throw。
(2)错误处理语句
(A). Try....catch
Try里面为可能异常的程序代码,Catch里面为处理异常类型的异常控制代码。
事实上跟VB中的GO TO语句差点儿相同。
Eg:通过try...catch语句来捕捉整数除零错误
<span style="font-family:KaiTi_GB2312;font-size:18px;"> using System;
using System.Collections.Generic;
using System.Text;
namespace 错误处理
{ class program
{ static void Main(string[] args)
{ int x = 5,y = 0;
try //try...catch语句
{
x =x/y; //引发除0错误
}
catch(Exception err) //捕捉该错误
{
Console.Writeline("{0}",err.Message); //显示错误信息
}
}
}
}</span>
(B).Try...catch...finally
和try...catch语句比多了个finally块,其作用是无论是否发生异常。finally块都会运行。我们全然在上个除零样例中加个finally块儿。非常easy。
(C).Throw
有两种使用方式:一种是抛出异常;一种是出现异常时通过catch块对异常处理,之后使用throw语句又一次抛出异常
Eg:在上个除零样例上加上throw例如以下
<span style="font-family:KaiTi_GB2312;font-size:18px;"> using System;
using System.Collections.Generic;
using System.Text;
namespace 错误处理
{ class program
{ static void fun()
{ int x = 5,y = 0;
try //try...catch语句
{
x =x/y; //引发除0错误
}
catch(Exception err) //捕捉该错误
{
Console.Writeline("{0}",err.Message); //显示错误信息
throw; //又一次抛出异常
}
}
static void Main(string[] args)
{ try
{ fun(); }
catch (Exception err) //捕捉该错误
{ Console.WritLine("Main:{}",err.Message;}
}
}
}</span>
C#中经常使用的异常类
小结
程序的编写就是不断地调试的过程,再牛的程序猿也不会写出全然没有错误的代码,本篇博文就是我们在日常C#
编程中避免和处理错误的一个小小的总结。http://blog.csdn.net/zhangzijiejiayou/article/details/9857153这
是是我对VB错误处理的一个链接,希望对大家有所帮助。
小议C#错误调试和异常处理的更多相关文章
- 转 Python3 错误和异常/ Python学习之错误调试和测试
########sample 0 https://www.cnblogs.com/Simon-xm/p/4073028.html except: #捕获所有异常 except: <异常名> ...
- 【转】段错误调试神器 - Core Dump详解
from:http://www.embeddedlinux.org.cn/html/jishuzixun/201307/08-2594.html 段错误调试神器 - Core Dump详解 来源:互联 ...
- [python]错误检测及异常处理try-except
1. 简介 要给代码添加错误检测及异常处理,只需要将其封装在try-except中. try:通常的代码 except:处理错误和异常的代码 2. 示例 import os try: path = ' ...
- python基础之错误、调试(异常处理)
在程序运行过程中,总会遇到各种各样的错误. 有的错误是程序编写有问题造成的,比如本来应该输出整数结果输出了字符串,这种错误我们通常称之为bug,bug是必须修复的. 有的错误是用户输入造成的,比如让用 ...
- PHP中的错误处理和异常处理
错误处理: 1.语法错误 2.运行时的错误 3.逻辑错误 错误报告: 错误E_ERROR 警告E_WARNING 注意E_NOTICE 开发 ...
- PHP错误处理及异常处理笔记
给新人总结一下PHP的错误处理. PHP提供了错误处理和日志记录的功能. 这些函数允许你定义自己的错误处理规则,以及修改错误记录的方式. 这样,你就可以根据自己的需要,来更改和加强错误输出信息以满足实 ...
- java程序错误类型及异常处理
一.程序的错误类型 在程序设计中,无论规模是大是小,错误总是难免的.程序的设计很少有能够一次完成,没有错误的(不是指HelloWorld这样的程序,而是要实现一定的功能,具备一定实用价值的程序),在编 ...
- PHP错误调试
一:错误类型举例 1.语法错误:一般是语句最后缺少分号.缺少单引号或双引号.for循环或函数缺少花括号.缺少变量标示符$ 2.定义错误:一般是调用不存在的变量.调用不存在的函数或者类 3.逻辑错误:代 ...
- python--错误了就需要调试(异常处理)
python提供了两个非常重要的功能来处理python程序在运行中出现的异常和错误.你可以使用该功能来调试python程序. 我们可打开idle-->F1进行查看文档,里面很多异常类型,如图: ...
随机推荐
- python使用mysql connection获取数据感知不到数据变化问题
在做数据同步校验的时候,需要从mysql fetch数据和hbase的数据进行对比,发现即使mysql数据变化了,类似下面的代码返回的值还是之前的数据.抽取的代码大概如下: import MySQL ...
- 初学spring之入门案列
spring其实是一个很大的开源框架,而我学的就是spring framework,这只是spring其中的一小部分.有疑惑的可以去官网去看看,spring官网我就不提供了.一百度肯定有.和sprin ...
- js实现左右点击图片层叠滚动特效
需要加载js有 <script type="text/javascript" src="js/jquery-1.7.2.min.js"></s ...
- [ USACO 2010 FEB ] Slowing Down
\(\\\) \(Description\) 给出一棵 \(N\) 个点的树和 \(N\) 头牛,每头牛都要去往一个节点,且每头牛去往的点一定互不相同. 现在按顺序让每一头牛去往自己要去的节点,定义一 ...
- BZOJ1499: [NOI2005]瑰丽华尔兹(dp)
Description 你跳过华尔兹吗?当音乐响起,当你随着旋律滑动舞步,是不是有一种漫步仙境的惬意?众所周知,跳华尔兹时,最重要的是有好的音乐.但是很少有几个人知道,世界上最伟大的钢琴家一生都漂泊在 ...
- Javascript的一些技巧(《Javascript DOM编程艺术》、Javascript语言精粹)
1.什么时候用布尔变量当变量 假设你需要一个这样的变量:我在睡觉——存为一个值:我没在睡觉——存为另一个值. 一般的做法: var stateOne="睡觉",stateTwo=& ...
- Memcached通信协议
英文水平很烂,做梦都想着能把英语学习,可以使用一口流利的英文和洋鬼子交流,顺便忽悠下自己的同胞.没有地方学习英语,看还可以,网上有很多关于计算机的英文文献,写还行,说就完全不可能了.在以后的工作中慢慢 ...
- VC++函数只被调用一次
如何保证某个函数只被调用一次 一个函数caller会在其内部调用另外一个函数callee,现在的情况是,caller可能会在多个地方被多次调用,而你希望callee只在第一次被调用时被调用一次.一 ...
- 新开的坑-python学习笔记(1)——连接符与转义
1/print输出格式虽然知道怎么用却还要打破砂锅的问问题... 问题答案是 需要读很多基础文档教程 --------例如 "+" . "," 作为连接符的作 ...
- blender_(uv应用)................http://digitalman.blog.163.com/blog/static/23874605620174172058299/
轻松学习Blender基础入门之九:UV-1 2017-06-21 14:24:49| 分类: Blender |举报 |字号 订阅 下载LOFTER 我的照片书 | [前言] ...