一、传统异常处理
1、C 语言中的异常处理
传统的 C 语言中 错误处理 , 是通过返回不同的 int 类型值进行的 , 如 :
- 执行成功返回 0 ;
- 情况一 执行失败 , 返回 1 ;
- 情况二 执行失败 , 返回 2 ;
2、代码示例 - 传统异常处理
如下代码示例中 , 实现一个字符串拷贝功能 , 拷贝时可能遇到各种错误 , 如 : 源字符串 不符合要求 , 目的字符串不符合要求 , 拷贝过程出错等 ;
传统的 C 语言处理方式就是 : 返回 int 类型返回值 , 函数执行成功返回 0 , 不同的失败情况返回不同的返回值 ;
代码示例 :
代码语言:javascript复制#include "iostream"
using namespace std;
// 拷贝函数
// 返回值 int 类型的错误码
int my_strcpy(char* to, char* from) {
if (from == NULL)
{
// 源字符串出错
return 1;
}
if (to == NULL)
{
// 目标字符串出错
return 2;
}
// 拷贝前检查条件
if (*from == 'J')
{
// 源字符串不能是 J 开头的
return 3;
}
// 逐个字节拷贝字符
while (*from != '