2016 - 2024

感恩一路有你

构造函数 C语言异常处理和结构化异常处理有什么区别?

浏览量:2555 时间:2021-03-13 21:13:25 作者:admin

C语言异常处理和结构化异常处理有什么区别?

所谓的“正常”C异常处理使用三个额外的C语句:try、catch和throw。这些语句的功能是允许程序(异常处理程序)在正在执行的程序中发生异常时尝试找到程序的安全出口。异常处理程序可以捕获任何数据类型上的异常,包括类C。这三个语句的实现基于ISO wg21/ANSI x3j16 C异常处理标准。Microsoft C支持基于此标准的异常处理。请注意,此标准仅适用于C,不适用于C。结构化异常处理是Microsoft C/C编译器的函数扩展。它最大的优点是同时适用于C和C。Microsoft的结构化异常处理使用了两种新结构:try except和try finally。这两个结构既不是ansic标准的子集,也不是父级,而是异常处理的另一个实现(微软将继续致力于此)。Try-except结构称为异常处理,Try-finally结构称为终止处理。Try-except语句允许应用程序在发生异常时检索机器状态。它给用户显示错误信息或调试程序带来了极大的方便。当程序的正常执行被中断时,try finally语句使应用程序能够确保执行cleaner。尽管结构化异常处理有其优点,但也有其缺点——它不是ANSI标准。因此,与使用ANSI异常处理的程序相比,使用结构化异常处理的程序的可移植性较差。如果您想编写一个真正的C应用程序,最好使用ANSI异常处理(即try、catch和throw语句)。

构造函数 python中异常处理的两种方式 结构化异常处理

版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。