在Mac上哪里使用回溯呼叫 我想从崩溃的C++ MAC应用中得到回溯,但是我对MAC是新的,我不确定如何最好地去执行它。
我发现一个关于stackoverflow的问题,详细说明了它的用法: 然而,我的问题是,我看不到代码的作用是什么在Mac上哪里使用回溯呼叫 我想从崩溃的C++ MAC应用中得到回溯,但是我对MAC是新的,我不确定如何最好地去执行它。,c++,debugging,macos,backtrace,C++,Debugging,Macos,Backtrace,我发现一个关于stackoverflow的问题,详细说明了它的用法: 然而,我的问题是,我看不到代码的作用是什么 它放在main.cpp中吗 它生活在一个城市的捕获区吗 试一下挡块 我可以用一些完整的代码示例,但是我很难找到它们。另一个问题中提到的代码需要在崩溃后执行到哪里。根据发生的情况,如果抛出异常,则可能在catch块中发生,如果程序因seg故障或总线错误而崩溃,则可能在信号处理程序中发生 下面是一个捕捉信号的示例。它将进入main() 静态无效信号(int num){ //捕获信号时要执
我可以用一些完整的代码示例,但是我很难找到它们。另一个问题中提到的代码需要在崩溃后执行到哪里。根据发生的情况,如果抛出异常,则可能在catch块中发生,如果程序因seg故障或总线错误而崩溃,则可能在信号处理程序中发生 下面是一个捕捉信号的示例。它将进入main()
静态无效信号(int num){
//捕获信号时要执行的代码
}
void InstallSignalHandler(常量int,其中[15]){
对于(int i=1;i<15;i++)
if(which[i]!=0&&which[i]!=SIGABRT)
信号(其中[i],信号);
}
Its在应用程序空闲时发生总线错误。那么,有人能提供一个添加到信号处理程序的示例吗?
static void CatchSignal(int num) {
// code to execute when signal is caught
}
void InstallSignalHandler(const int which[15]) {
for (int i = 1; i < 15; i++)
if (which[i] != 0 && which[i] != SIGABRT)
signal(which[i],CatchSignal);
}