gdb调试c++异常,系统调用,库的load,unload,信号异常等.

  1. 捕获C++异常

    • 格式

      • catch throw [regexp] | catch rethrow [regexp] | catch catch [regexp]
    • 说明

      • 以正则表达式的方式指定感兴趣的异常.
      • throw阶段捕获.
      • $_exception获取抛出的什么异常.
      • 无参表示捕获所有.
    • 局限

      • 系统依赖.遵循gnu-v3标准的c++ ABI支持这种断点.
    • 案例

      • 代码

        #include<stdio.h>
        int main(){
                    
                    
           try{
                    
                    
               throw 2;
           }
           catch(int a){
                    
                    
               printf("%d\n",a);
           }
        }
        
        • 文件名test.cpp.
      • 编译执行

        g++ -g test.cpp -o a.out
        gdb -q -ex 'catch throw int' -ex <
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值