1.异常的概念

发布日期:2020-12-26 09:10:38 来源:网络转载

程序的错误通常包括:语法错误、逻辑错误、运行异常

下面分别介绍:

  1. 语法错误,这个不必多说,大家在之前的学习一定都知道,就是只程序代码不符合语法要求,在编译、链接时候就由编译器提示出来的错误,好发现。

  2. 逻辑错误,这种情况,是指编译没问题,没有错误,可以运行起来。但程序的输出结果或执行过程不如我们所愿,达不到预期的结果,这种错误就叫做逻辑错误,需要不断的调试、测试来发现。

  3. 运行异常(exception),是指程序在运行过程中由于意外的情况,造成的程序异常终止,比如内存不足、打开的文件不存在、除数为0的情况等等。



前面两种我们都已经知道,第三种则是我们本章要详细展开讲解的知识了。通常情况下,导致程序异常错误,虽然无法避免,但是确可以预料,进行预见性的处理,来避免程序崩溃,从而保障程序的健壮性。这种行为我们称之为异常处理


在过往学习中,我们捕获和处理异常的方法也很多,比如通过if...else判断调用函数的返回值,或在执行代码之前对关键的数据进行检查等等,如果出现问题,则exit()或abort()等函数来终止程序。

比如:

cin>>a>>b;
if(b==0)//捕获异常
{
    cout<<"Drivide 0!"<<endl;
}
else
{
    cout<<a<<"/"<<b<<"="a/b<<endl;
}

大家可以看到,在过往的学习中,我们往往通过if来进行判断,从而对关键部分进行捕获和预防,但这种方式在使用过程中往往会因为if判断过多,使程序的易读性降低,并且对于需要判断函数返回值的情况,对于那些没有返回值的函数,就束手无策了。为此C++为我们提供了异常处理的方案


关键词 :
网站违法和不良信息举报邮箱:23139485@qq.com
CopyRight@2020-2030 www.haoapp8.cn All Rights Reserved.C语言学习网版权所有 粤ICP备15061369号
免责声明:本站内容来源于用户自行提供或网络收集,其真实性、准确性和合法性,www.haoapp8.cn不提供任何保证,亦不承担任何法律责任.而产生的法律关系及法律纠纷,由您自行协商解决。