在Linux下,可以使用C或C++语言编写异常处理程序。以下是一个简单的示例程序,用于捕获并处理异常:
#include#include #include void sig_handler(int signo) { if (signo == SIGSEGV) { printf("Segmentation fault caught!\n"); exit(1); } } int main() { signal(SIGSEGV, sig_handler); // Cause a segmentation fault int *ptr = NULL; *ptr = 42; return 0; }
在上面的示例中,sig_handler
函数用于处理SIGSEGV信号(即段错误)。在main
函数中,我们使用signal
函数将SIGSEGV信号与sig_handler
函数关联起来。然后,我们故意引发一个段错误,程序会捕获并处理该异常。
需要注意的是,异常处理程序通常会在程序发生错误时终止程序的执行。您可以根据具体需求编写自己的异常处理程序,来处理不同的异常情况。