下载此文档

C 第18章 异常处理.ppt


文档分类:IT计算机 | 页数:约26页 举报非法文档有奖
1/26
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/26 下载此文档
文档列表 文档介绍
异常处理主讲教师:#include<iostream>usingnamespacestd;voiddivided(doublea,doubleb){//实现两个浮点数除法doubleresult=a/b;//会不会有问题?cout<<“Result=”<<result<<endl;}intmain(){doublea,b;cout<<“Pleaseinputtwonumbers:”;cin>>a>>b;divided(a,b);//调用divided函数return0;}#include<iostream>#include<cstring>usingnamespacestd;intmain(){char*ch;//字符指针longlongsize;cout<<“Pleaseinputsize:”;cin>>size;cout<<"SizeValue:"<<size<<endl;ch=newchar[size];//申请堆空间,是否有问题?cout<<“Pleaseinputastring:”;cin>>ch;cout<<“StringSize=”<<strlen(ch)<<endl;delete[]ch;//释放堆空间return0;}(Exception):程序有时会遇到运行阶段错误,导致程序无法正常地运行下去。例如:程序试图打开一个不可用的文件请求过多的内存遭遇不能容忍的值说明:运行异常,可以预料,但不能避免,:定义异常。将那些有可能产生错误的语句框定在try语句块中。定义异常处理(捕获异常)。将异常处理的语句放在catch语句块中,以便异常被传递过来时进行处理。抛掷异常。检测是否产生异常,若是,则通过throw语句抛掷异常。:定义异常catch语句:捕获异常throw语句:抛掷异常#include<iostream>usingnamespacestd;voiddivided(doublea,doubleb){//实现两个浮点数除法doubleresult;try{//定义异常if(b==)throwb;//抛掷异常result=a/b;cout<<“Result=”<<result<<endl;}catch(doubleval){//捕获异常cout<<“urs!Exceptionvalueis”<<val<<endl;}}intmain(){doublea,b;cout<<“Pleaseinputtwonumbers:”;cin>>a>>b;divided(a,b);return0;}:try语句块表示块中的语句可能会发生异常,放在其中加以监控。注意:C++只理会受监控的运行异常。throw后面的表达式的类型被称为所引发的异常类型。在try语句块之后必须紧跟一个或多个catch语句,目的是对发生的异常进行处理(注意:try之前不允许出现catch)。catch()括号中的声明只能容纳一个形参,当类型与抛掷异常的类型匹配时,该catch()语句块便称捕获了一个异常而转到其块中进行异常处理。catch()形参的值则为throw语句抛掷的异常值。当异常发生时,try语句块中异常之后的语句不再执行。#include<iostream>usingnamespacestd;voiddivided(doublea,doubleb){//实现两个浮点数除法doubleresult;try{//定义异常if(b==)throwb;//抛掷异常result=a/b;cout<<“a/b=”<<result<<endl;result=b/a;//存在除0异常,未被监控cout<<“b/a=”<<result<<endl;}catch(doubleval){//捕获异常cout<<“urs!Exceptionvalueis”<<val<<endl;}}intmain(){doublea,b;cout<<“Pleaseinputtwonumbers:”;cin>>a>>b;divided(a,b);return0;}++只理会受监控的运行异常#include<iostream>usingnamespacestd;intmain(){intidx;cout<<“Pleaseinputindexvalue:”;cin>>idx;try{//定义

C 第18章 异常处理 来自淘豆网www.taodocs.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数26
  • 收藏数0 收藏
  • 顶次数0
  • 上传人changjinlai
  • 文件大小519 KB
  • 时间2019-12-15