C 语言处理错误
- 终止程序:利用
assert()断言去终止程序,当()的表达结果为false时会终止程序。 - 返回错误码:手动查找对应的错误,系统的接口函数将作错误码放到
errno中表示错误。
C 语言中的 strerror 将参数对应 errno 的错误信息的字符串返回。errno 是一个全局变量,当使用标准库的函数发生错误时,就会将对应的错误码放到 errno 中,每个错误码对应着不同的错误信息,strerror 就可以将错误码对应的字符串返回。
以下为错误码 0~10 对应的信息:
#include <iostream>
#include <errno.h>
using namespace std;
int main() {
for (size_t i = 0; i <= 10; ++i)
cout << i << ":" << strerror(i) << endl;
return 0;
}

C++ 异常
C++ 的异常处理是一种应对程序运行时错误的机制,允许在程序中独立开发的部分在运行时就出现的错误进行通信并作出相应的处理,使得将问题的检测与解决问题的过程分开,程序的一部分检测问题的出现,然后将解决任务传递给程序的另一部分。
总的来说,异常能够提供一种结构化的方法来捕获和处理错误,从而提高代码的健壮性和可维护性。
异常的抛出与捕获
基本语法
C++ 的异常处理依赖于三个关键字:
try:用于定义可能抛出异常的代码块。throw:用于抛出异常对象。catch:用于捕获异常,并定义处理异常的逻辑。
使用实例:
void testException {
(x == ) ;
cout << << x << endl;
}
{
{
();
} ( * e) {
cout << << e << endl;
}
;
}









