程序崩溃时如何捕获错误?
示例 - 崩溃时将Java错误日志写入文件。
我写了这段代码导致错误:
int * invalidPointer = NULL;
printf("%d\n", invalidPointer[0]);
java崩溃并将错误日志(hs_error_pid(pid).log)保存到文件中,我想处理用C编写的程序中的错误(不是在Java中,这只是示例)
第二个示例 - 当崩溃显示信息时Chrome,我们可以通过单击是重启浏览器。
答案 0 :(得分:5)
虽然它是未定义的行为,但如果您遇到分段错误,可以使用此功能。
#include <signal.h>
#include <stdio.h>
void Segfault_Handler(int signo)
{
fprintf(stderr,"\n[!] Oops! Segmentation fault...\n");
}
int main() {
signal(SIGSEGV,Segfault_Handler);
return 0;
}