C语言中3种不同出错处理方式的优缺点

这个是我在《数据结构习题集》上看到的一个习题,攒下来自己收藏
非原创

在程序设计中,常用下列三种不同的出错处理方式
(1)用EXIT语句终止执行并报告错误;
(2)以函数的返回值区别正确返回或错误返回;
(3)设置一个函数变量的函数参数以区别正确返回或某种错误返回.
试讨论这三种方法各自的优缺点.

第一种方法会直接终止整个程序,第二个方法会终止当前的函数,第三个方法不会终止函数或者是程序。相比较而言,第一种方法因为会直接退出程序,在调试过程中会更方便些,便于找到错误后立刻修改。而在程序的正常运行过程中,由于错误一般不是灾难性的,可能是由于不合法的输入等原因造成的,所以适用第二第三种方法处理错误,可以通过提示用户重新输入或者是其他的方法解决错误,使程序正常运行。
第二种和第三种方法也存在一定的区别。通常函数都会需要返回值,对于不需要返回值的函数也可以设定返回值,所以通过返回值来确定函数执行是否出错相对来说更加方便。但这种方法有显而易见的缺点就是对正常返回值和非正常返回值的区分有时候会比较麻烦,这个时候使用第三种解决方法就会简单些。第三种方法适用所有函数(自己编写的),但是实现起来不只需要多申请一个标志变量,实现起来还比较麻烦。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值